Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > ОС и железо
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 16.05.2011, 18:22
glorit glorit вне форума
Прохожий
 
Регистрация: 16.05.2011
Сообщения: 10
Репутация: 10
По умолчанию идентификация COM порта

пишу программу для работы с виртуальным ком портом, надо что бы она автоматически определяла нужное устройство, подключенное к ком порту. У устройства есть идентификационный код.Подскажите как распознать к какому ком порту подключено это устройство, если при подключении устройства к компьютеру оно меняет ком порт, и на компьютере есть другие задействованные ком порты?
Ответить с цитированием
  #2  
Старый 16.05.2011, 19:26
Assistant Assistant вне форума
Продвинутый
 
Регистрация: 20.02.2011
Адрес: там где правят идиоты
Сообщения: 603
Версия Delphi: 7
Репутация: выкл
По умолчанию

ну самое логично, это наверное опрашивать каждый COM порт или смотреть какой COM порт добавился в систему (отслеживать события изменение чего либо в системе?), а потом опрашивать этот COM порт, на наличие в нём нужных данных.
__________________
взялся из неоткуда, ничего не прошу, помогаю просто так
ICQ: 593977748 - стучать в случае КРАЙНЕЙ необходимости, ну, или если вы со Ставрополя
Ответить с цитированием
  #3  
Старый 20.05.2011, 12:47
glorit glorit вне форума
Прохожий
 
Регистрация: 16.05.2011
Сообщения: 10
Репутация: 10
По умолчанию

перебором не получится так как устройство ждет команды и отвечает на неё а в переборе может найти другое устройство и работать с ним

я покопался в инете и кое что нарыл

работа с реестром
1.обращаемся HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM
тут берем номера портов и название в моём случае \Device\USBSER000 и идем по этому пути
2.обращаемся HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\usbser\Enum ищем значение USB\Vid_04d8&Pid_ff14\5&57b91&0&2 и идем по этому пути (Vid_04d8&Pid_ff14 соответствует устройству)
3.обращаемся HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\U SB\Vid_04d8&Pid_ff14\5&57b91&0&2\Device Parameters проверяем что com соответствует


можно упростить и работать с пунктами 1 и 2 или 2 и 3 они дают полную инфу


теперь я думаю как это реализовать

а может кто подскажет более простой путь
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 18:50.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter