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

Вниз

function GetDeviceIDList:TStringList; ???   Найти похожие ветки 

 
kirill_ru   (2003-01-10 00:49) [0]

Подскажите пожалуйста ,как получить список "Device ID" всех установленных в системе PCI устройств.Что-нибудь вроде subj.


 
kirill_ru   (2003-01-10 01:12) [1]

Этот список есть в ключе реестра "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum"(WIN2000/XP) ,но если к примеру добавить какое либо устройство,потом с ним загрузиться ,выключить компьютер и затем убрать его ,то "Device ID" этого устройства так и останется в реестре :( .
Как узнать действительно ли устройство с заданным "Device ID" присутствует в системе или это фантом ? В API подобных функций не нашёл ...


 
Alex Konshin   (2003-01-10 03:44) [2]

А если посмотреть утилитой winobj с www.sysinternals.com, то оно тоже там остается? Если нет - то могу научить как их читать также как это делает winobj. Если да, то увы, ничем помочь не могу...


 
kirill_ru   (2003-01-10 05:51) [3]

Я сначала было обрадовался потому как действительно в утилите отсутствуют два левых устройства ссылки на которые остались в системе (звуковуха и сеть) однако потом так и не нашёл в ней "device id" видеокарты(VEN_10DE&DEV_0171) и системного чипсета(VEN_8086&DEV_1130) которые на самом деле установленны.
К тому же как я понял утилита предназначенна только для NT(использует NTDLL.DLL), а мне и WIN9X нужно,там ключ "HKEY_LOCAL_MACHINE\Enum\PCI".Всёравно спаибо.
А вообще интересно, в разделе BaseNamedObjects напротив моей проги написано Type - "Mutant" :)


 
Alex Konshin   (2003-01-10 07:15) [4]

А ты их где искал? Может ты просто чего-то не заметил или их просто и не должно быть? Как ты понял, эта утилита показывает объекты ядра NT, то есть, как мне кажется, она должна давать реальную картину. Хотя кто их знает - у них везде секреты.

Да, это действительно будет работать только для NT.
Если все-таки интересно, как получить эту информацию - смотри на моем сайте пример по Native API.
http://home.earthlink.net/~akonshin/index.htm

Наверно, это можно еще сделать через WMI, но я его не знаю.



 
kirill_ru   (2003-01-10 17:37) [5]

У меня этот раздел представлен как \?? .
В этом разделе конечно хаос ,но "Device ID",типа "VEN_10EC&DEV_8139&SUBSYS_813910EC&REV_10"(соответствует Realtek RTL8139/810X Ethernet NIC) найти можно.Но они там как я уже писал не все.Точно не знаю но мне кажется этот список типа как в LINUX ,там драйвера могут быть как сами посебе(подгружаемые) а могут напрямую компилироваться в ядро.


 
Alex Konshin   (2003-01-11 06:03) [6]

На XP он называется \??GLOBAL
На самом деле в этом фолдере собраны символические линки на все устройства, которые можно открыть с помощью DeviceIoControl.
То есть там вроде как все устройства быть должны.



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
14-30115
GebbelZ
2003-02-23 02:57
2003.03.10
MS Internet Explorer


3-29697
Dracula2000
2003-02-18 10:38
2003.03.10
Есть проблемка с DLL & InterBase


8-29962
kucherav
2002-11-26 20:12
2003.03.10
может вопрос и не в тему, но все-таки


14-30126
Сатир
2003-02-22 19:28
2003.03.10
Путин рулит!!!


8-29964
Marko_polo
2002-11-28 06:04
2003.03.10
Как создать...