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

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



Память: 0.46 MB
Время: 0.014 c
3-29720
NightCold
2003-02-18 12:12
2003.03.10
СРОЧНО!


9-29695
AXe
2002-09-26 19:30
2003.03.10
Как сделать мультиплеер в DelphiX?


1-29878
AlexanderSK
2003-02-26 13:28
2003.03.10
RemoteDataModule - Interface как передать строку?


14-30099
blackman
2003-02-22 13:04
2003.03.10
Суббота - унылая, пора!!!


7-30149
sniknik
2003-01-11 23:20
2003.03.10
Внешний СОМ сервер, отследить тип запуска.




   Наверх