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

Вниз

Как получить LinkName устройства?   Найти похожие ветки 

 
Serega41 ©   (2007-08-01 22:43) [0]

Доброго всем здравия!
Такая вот возникла проблема у меня:
Есть пара PCI устройств с известными VendorID, DeviceID, SubsystemID. С помощью ф-ий SetupDiEnumDeviceInfo и SetupDiGetDeviceRegistryProperty я успешно нахожу и получаю информацию об экземплярах этих устройств. Но никак не пойму как получить их LinkName, хоть убей! Если использовать ф-и SetupDiEnumDeviceInterfaces и SetupDiGetDeviceInterfaceDetail, то эти устройства не находятся.
Люди мудрые, подскажите как получить этот несчастный LinkName?


 
Lacmus ©   (2007-08-02 11:32) [1]

http://delphimaster.net/view/4-1184658001/&toprint=1 ?


 
serega41 ©   (2007-08-02 22:09) [2]


>  Если использовать ф-и SetupDiEnumDeviceInterfaces и SetupDiGetDeviceInterfaceDetail,
>  то эти устройства не находятся.


 
Rouse_ ©   (2007-08-02 22:13) [3]

Хотел рассказать анекдот, но не буду...
Ты код, что-ли, покажи где у тебя не вышло консенсуса с задачей...


 
serega41 ©   (2007-08-02 22:42) [4]

Код такой же как и предложил Lacmus.
Да, USB и HID устройства прекрасно находятся и открываются с помощью CreateFile, а вот с PCI-устройством проблемы, ибо какой GUID подставлять?
Порыскав в реестре нашел ветку HLM\System\CurrentControlSet\Control\DeviceClasses, в которой перечислены узлы с названием GUIDов классов устройств, которые содержат списки устройств данного класса.
Моих PCI-устройств там не оказалось.
Для этих PCI есть драйвер, который присваивает устройству символьный линк, типа, PCIDev0, PCIDev1, ...  
Заметил еще, что линки для USB начинаются с \\?\, а для PCI - \\.\
Не спроста, наверное)
В принципе есть возможность править и перекомпилить драйвер, если знать чего туда нужно дописать, чтобы устройство попало в перечисление интерфесов(SetupDiEnumDeviceInterfaces)
Вот собственно и проблема)


 
Velimir   (2008-02-06 21:32) [5]

При помощи SetupDiGetDeviceRegistryProperty меняя 3 параметр от 0 до 31 можно получить то, что тебе надо... Так размыто потому что точно не помню...

Может вопрос не в тему...
Как зная все вышесказанное узнать прерывания, диапазон адресов ввода/вывода?



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
15-1223464331
Поросенок Винни-Пух
2008-10-08 15:12
2008.12.14
в копилку опыта


2-1226049431
Denis__
2008-11-07 12:17
2008.12.14
GetTickCount в Turbo Pascal 7.0


2-1225724398
Vova1995
2008-11-03 17:59
2008.12.14
ListBox


15-1223560915
Tricky_
2008-10-09 18:01
2008.12.14
Биоритмы


6-1196409724
Ш-К
2007-11-30 11:02
2008.12.14
Как реализовать обсервер.