Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Диспетчер устройств [D7, WinXP]


z80maniac ©   (2007-01-16 20:15:00) 

Windows XP. Как получить список оборудования, установленного в системе (как в диспетчере устройств). А также иметь возможность включать и выключать  устройства. Частный случай: как узнать отключить/включить сетевую плату или получить другие её свойства.


Rouse_   (2007-01-17 15:47:00) [1]

const
 DIGCF_ALLCLASSES=$00000004;
 DIGCF_PRESENT=$00000002;
 DIGCF_PROFILE=$00000008;
 DIGCF_DEVICEINTERFACE=$00000010;
 SPDRP_DEVICEDESC=$00000000;

type
 SP_DEVINFO_DATA=record
  cbSize:DWord;
  ClassGuid:TGuid;
  DevInst:DWord;    // DEVINST handle
  Reserved:LongInt;
 end;

 PSP_DEVINFO_DATA = ^SP_DEVINFO_DATA;
 PGuid = ^TGuid;
 H_DEV = Pointer;

function SetupDiCreateDeviceInfoList(ClassGuid:PGuid;
hwndParent:cardinal):Pointer; stdcall; external 'setupapi.dll';
function SetupDiGetClassDevsExA(ClassGuid:PGuid; Enumerator:PChar;
hwndParent:cardinal; Flags:DWord; DeviceInfoSet:Pointer;
MachineName:PChar; Reserved:DWord):Pointer; stdcall; external 'setupapi.dll';
function SetupDiGetClassDevsA(ClassGuid:PGuid; Enumerator:PChar;
hwndParent:cardinal; Flags:DWord):Pointer; stdcall; external 'setupapi.dll';
function SetupDiGetDeviceRegistryPropertyA(DeviceInfoSet:Pointer;
DeviceInfoData:PSP_DEVINFO_DATA; Property_:DWord; PropertyRegDataType:Pointer;
PropertyBuffer:Pointer; PropertyBufferSize:cardinal; RequiredSize:Pointer):longbool;
stdcall; external 'setupapi.dll';
function SetupDiEnumDeviceInfo(DeviceInfoSet:Pointer; MemberIndex:DWord;
var DeviceInfoData:SP_DEVINFO_DATA):longbool; stdcall; external 'setupapi.dll';
function SetupDiDestroyDeviceInfoList(DeviceInfoSet:Pointer):longbool; stdcall;
external 'setupapi.dll';


z80maniac   (2007-01-17 15:37:00) [2]

А где эти функции находятся? Или нужен какой-то сторонний юнит?


Rouse_   (2007-01-17 14:12:00) [3]

SetupDiEnumDeviceInfo получить, SetupDiSetClassInstallParams + SetupDiCallClassInstaller отключить/включить


Наверх

Титульная страница Поиск, карта сайта Написать письмо