Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.13;
Скачать: CL | DM;

Вниз

Help! Как запросить у компа: какие системе доступны компорты?   Найти похожие ветки 

 
fiatik ©   (2003-11-28 23:17) [0]

Help!
Второй день ищу.
При запуске проги необходимо выяснить: какие com-порты доступны.


 
jack128 ©   (2003-11-29 00:49) [1]

последовательно опросить их..


 
Германн ©   (2003-11-29 03:31) [2]

2 jack128 © (29.11.03 00:49) [1]
Уточню - последовательно попробывав открыть их.


 
y-soft ©   (2003-11-29 11:07) [3]

Недавно уже приводил код:


procedure EnumComPorts(Strings : TStrings; ShowAll : boolean);
var
MaxPorts : integer;
hPort : THandle;
PortNumber : integer;
PortName : string;
begin
Strings.Clear;

case Win32PlatForm of
VER_PLATFORM_WIN32_NT: MaxPorts := 256;
VER_PLATFORM_WIN32_WINDOWS: MaxPorts := 50;
end;

for PortNumber := 1 to MaxPorts do
begin
if PortNumber > 9 then
PortName := "\\.\COM" + IntToStr(PortNumber)
else
PortName := "COM" + IntToStr(PortNumber);

hPort := CreateFile( PChar(PortName),
GENERIC_READ or GENERIC_WRITE,
0,
nil,
OPEN_EXISTING,
0,
0);

LastErr := GetLastError;
if not (hPort = INVALID_HANDLE_VALUE) or
(ShowAll and (GetLastError = ERROR_ACCESS_DENIED))then
begin
Strings.Add(PortName);
end;
CloseHandle(hPort);
end;
end;


 
y-soft ©   (2003-11-29 11:10) [4]

Опечатка! Строчку LastErr := GetLastError удалить!


 
jack128 ©   (2003-11-29 11:46) [5]

Скажите, а бывает такое, что в системе существует СOM10, но не существует СOM9?
Если не бывает, то по if GetLastError = ERROR_FILE_NOT_FOUND имеет смысл Break; делать..


 
y-soft ©   (2003-11-29 12:11) [6]

jack128 © (29.11.03 11:46) [5]

Бывает. Некоторые драйвера позволяют назначать номер порта произвольно, так что для гарантии проверять нужно все, тем более, что обычно эта проверка проводится один раз (при инициализации приложения) и занимает немного времени...


 
Ihor Osov'yak ©   (2003-11-29 13:20) [7]

2 [5] jack128 © (29.11.03 11:46)

Бывает.
У меня сейчас COM1, COM2, COM7, COM11


 
K.o.Z ©   (2003-11-29 16:47) [8]

а откуда у вас столько разъемов на матери?


 
Anatoly Podgoretsky ©   (2003-11-29 16:51) [9]

А причем тут чья то мама?


 
K.o.Z ©   (2003-11-29 16:54) [10]

что такое COM-порт?


 
Anatoly Podgoretsky ©   (2003-11-29 17:04) [11]

Ком порт это физическое устройство для последовательной двунаправленной передачи данных, когда мы говорим о ком портах в компьютере, то мы подразумеваем о спецификации RS323C


 
K.o.Z ©   (2003-11-29 17:10) [12]

т.е. это не обязательно 2 разъема на задней панели корпуса, в которые подкл. мышь или клава или может быть подключен модем?


 
Anatoly Podgoretsky ©   (2003-11-29 17:26) [13]

У меня на плате нет разъемов, но зато есть 32 порта
Мышки иногда подключаются, но клавиатур не видел. Если у тебя есть ком порты, то это или 9 или 25 контактные разъемы типа папа


 
K.o.Z ©   (2003-11-29 17:42) [14]

да, есть 9-ти контактный разъем типа папа, но у меня их 2.
вот вы говорите, что нет разъемов, а есть порты - а какая разница??


 
Anatoly Podgoretsky ©   (2003-11-29 19:08) [15]

А такая, у меня их на плате нет!
Кстати по спецификации PC99 компьютер не должен иметь COM и LPT портов


 
y-soft ©   (2003-11-29 21:46) [16]

>Anatoly Podgoretsky © (29.11.03 19:08) [15]

Спецификация есть, но и разъемы портов тоже есть :)

Если точно, то не только RS232C, но и RS422, RS423 и особенно - RS485

>K.o.Z © (29.11.03 17:42) [14]

Устройство может быть и виртуальным, безо всяких разъемов - лишь бы драйвер был установлен. Как по-вашему система идентифицирует модем, подключенный по USB в качестве COM-порта? :)


 
Anatoly Podgoretsky ©   (2003-11-29 21:53) [17]

y-soft © (29.11.03 21:46) [16]
Я уже видел такие компьютеры


 
y-soft ©   (2003-11-29 22:01) [18]

>Anatoly Podgoretsky © (29.11.03 21:53) [17]

Да, встречаются :(
Но та же спецификация предусматривала замену - тот же AMR, например, и его одно время даже начинали устанавливать на платы. Но что-то не шибко такие устройства получили распространение :)

А насчет COM-портов (в смысле - установки на плате разъемов DB9 и DB25) - RS485 очень широко применяется в промыщленных системах управления и сбора данных и умирать вроде не собирается...


 
090   (2003-11-29 22:23) [19]

Все че-то говорят и все без толку.



Страницы: 1 вся ветка

Текущий архив: 2004.02.13;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.028 c
7-39102
AlexRush
2003-11-29 12:19
2004.02.13
настройки системы - определить LargeFont или SmallFont


3-38749
Kadr
2004-01-21 12:00
2004.02.13
Проблема с подключением


3-38720
First_May
2004-01-22 09:09
2004.02.13
Владелец базы IB


1-38858
dima_crt
2004-02-02 10:26
2004.02.13
ActivateHint


8-38975
Blacked
2003-10-14 01:37
2004.02.13
Как отследить окончание просмотра файла в TMediaPlayer?