Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
15-1223653872
Terasbetoni
2008-10-10 19:51
2008.12.14
Посоветуйте модуль для работы с двумерными графиками


1-1203967029
Thor
2008-02-25 22:17
2008.12.14
Каким образом получаем exe?


15-1223364033
Vlad Oshin
2008-10-07 11:20
2008.12.14
Предложение по оформлению.


6-1196012003
av_kit
2007-11-25 20:33
2008.12.14
Включить ПК по сети


15-1223635750
Добежал
2008-10-10 14:49
2008.12.14
Ошибка в SQLite




   Наверх