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

Вниз

SetupAPI -> GUID устройства   Найти похожие ветки 

 
Tailor_McMaffin   (2009-10-06 13:14) [0]

Приветствую мастера! Помогите найти ответ :)

Глобальная задача: необходимо получить список сетевых устройств и работать с ними.

С помощью SetupAPI.SetupDiGetClassDevs я получаю список устройств по GUID класса ({4D36E972-E325-11CE-BFC1-08002BE10318}). Далее вынимаю информацию по каждому устройству при помощи SetupAPI.SetupDiEnumDeviceInfo и SetupAPI.SetupDiGetDeviceRegistryProperty.

Однако нюанс, как получить GUID полученного конкретного устройства?


 
Tailor_McMaffin   (2009-10-06 13:20) [1]

Грубо говоря тот GUID который расположен:
\\HKLM\SYSTEM\CurrentControlSet\Services\{...}.


 
Tailor_McMaffin   (2009-10-06 13:30) [2]

Вернее даже в
\\HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{...}.


 
Tailor_McMaffin   (2009-10-06 14:11) [3]

Отвечаю сам:

получаем при помощи SetupAPI.SetupDiGetDeviceRegistryProperty параметр SPDRP_DRIVER:


...
const
 SPDRP_DRIVER                      = $00000009; // Driver (R/W)
...


Далее, создаем функцию:


function ConstructCfgLinkage( IOName: String ): String;
var
 SubKey: String;
 Reg: TRegistry;
begin
 SubKey:= "SYSTEM\\CurrentControlSet\\Control\\Class\\";
 SubKey:= SubKey + IOName + "\\";
 Reg:= TRegistry.Create( KEY_READ );
 try
   Reg.RootKey:= HKEY_LOCAL_MACHINE;
   if Reg.OpenKey( SubKey, false ) then
     begin
       Result:= Reg.ReadString("NetCfgInstanceId");
     end;
 finally
   Reg.CloseKey;
   Reg.Free;
 end;
end;


где IOName это параметр SPDRP_DRIVER устройства.

Вопрос решен, всем спасибо, все свободны!



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
2-1324037431
Alex_C
2011-12-16 16:10
2012.04.08
Динамическое создание Fields...


2-1324013868
И. Павел
2011-12-16 09:37
2012.04.08
Перезапуск службы после остановки системой


6-1254820466
Tailor_McMaffin
2009-10-06 13:14
2012.04.08
SetupAPI -> GUID устройства


2-1324028884
Alatiel
2011-12-16 13:48
2012.04.08
помогите пожалуйста решить задачку по delphi


2-1324306539
rilmeer
2011-12-19 18:55
2012.04.08
програмное заполнение Tibtable.locate