Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];

Вниз

Как получить 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 вся ветка

Форум: "WinAPI";
Текущий архив: 2008.12.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
3-1211271563
Ega23
2008-05-20 12:19
2008.12.14
Select * from - порядок полей


3-1210838639
grav
2008-05-15 12:03
2008.12.14
Упорядочение по возрастанию в IBTable


15-1223631728
oldman
2008-10-10 13:42
2008.12.14
Погиб Алексей Прокуроров.


2-1225795373
Iriss
2008-11-04 13:42
2008.12.14
TTreeView активизировать элемент


15-1223635424
{RASkov}
2008-10-10 14:43
2008.12.14
Поиск в Висте





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский