HDEVINFO hDevInfo;
SP_DEVINFO_DATA DeviceInfoData;
int bRet;
WCHAR DeviceDriver[MAX_PATH];
WCHAR DeviceName[MAX_PATH];
memset(&DeviceInfoData, 0 , sizeof(DeviceInfoData));
DeviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
hDevInfo = SetupDiGetClassDevs((LPGUID)&GUID_DEVCLASS_NET, 0, 0,DIGCF_PRESENT);
if (hDevInfo == INVALID_HANDLE_VALUE)
{
return 1;
}
for (DWORD i=0; SetupDiEnumDeviceInfo(hDevInfo, i, &DeviceInfoData); i++)
{
if ( !SetupDiGetDeviceRegistryProperty(hDevInfo, &DeviceInfoData, SPDRP_DRIVER, NULL, (PBYTE) DeviceDriver,
MAX_PATH, NULL) )
{
SetupDiDestroyDeviceInfoList(hDevInfo);
return false;
}
//查询指定的设备
if ( !SetupDiGetDeviceRegistryProperty(hDevInfo, &DeviceInfoData, SPDRP_DEVICEDESC, NULL, (PBYTE)
DeviceName, MAX_PATH, NULL) )
{
SetupDiDestroyDeviceInfoList(hDevInfo);
return -1;
}
}
break;
}
SetupDiDestroyDeviceInfoList(hDevInfo);