GUID 小问题!!
我用别人的程序得到以下U盘信息;
第1端口有USB设备连接
状态:已连接!
连接设备名:{36FC9E60-C465-11CF-8056-444553540000}\0006
connection index:[Port:1]
Device class:0x0,idVendor:0x58F,
idProduct:0x9380,
iManufacturer:0x1,
iSerialNumber:0x0,
bus speed:full,
Device Address:0x2,
Open Pipes:0x2
我在注册表里查到我U盘的驱动信息里找到
ClassGUID = {36FC9E60-C465-11CF-8056-444553540000}
问题是
1。这是我U盘设备的GUID吗?
2。我可以把它赋给guid吗?如下操作对吗?
GUID guid;
guid.Data1 = 0x36FC9E60;
guid.Data2 = 0xC465;
guid.Data3 = 0x11CF;
guid.Data4[0] = 0x80;
guid.Data4[1] = 0x56;
guid.Data4[2] = 0x44;
guid.Data4[3] = 0x45;
guid.Data4[4] = 0x53;
guid.Data4[5] = 0x54;
guid.Data4[6] = 0x00;
guid.Data4[7] = 0x00;
HDEVINFO HardwareDeivceInfo;
HardwareDeivceInfo = SetupDiGetClassDevs(&guidHID,NULL,NULL,(DIGCF_PRESENT|DIGCF_INTERFACEDEVICE));
SP_INTERFACE_DEVICE_DATA DeviceInfoData;
int NumberDevices;
NumberDevices = 10;
DeviceInfoData.cbSize = sizeof(SP_INTERFACE_DEVICE_DATA);
for(int i=0 ;i<NumberDevices;i++)
{
BOOL bSucess = SetupDiEnumDeviceInterfaces(HardwareDeivceInfo,0,&guidHID,i,&DeviceInfoData);
if(!bSucess)
return;
}
问题3是 SetupDiEnumDeviceInterfaces怎么第一次就返回错误呢?
多谢!!!