[問題] 對USB設備要進行Setup Enumeration失敗了!
我的問題是有兩個GUID:
第1個GUID(0xA5DCBF10L,.....)
第2個是1顆隨身碟的GUID(0x36FC9E60....)
執行SetupDiEnumDeviceInterfaces(...)函式時,GUID是0xA5DCBF10L的結果是True,
而換成GUID是0x36FC9E60的結果是False,網路上也爬文爬好久,是說不在裝置內的guid
請問我要如何讓USB隨身碟可以Setup Enumeration成功,而open device呢?
有什麼工作要去處理呢?
謝謝~~~~
程式碼如下:
static GUID GUID_DEVINTERFACE_USB_DEVICE =
//{0xA5DCBF10L,0x6530,0x11D2,{0x90,0x1F,0x00,0xC0,0x4F,0xB9,0x51,0xED } };
{ 0x36FC9E60,0xC465,0x11CF,{0x80,0x56,0x44,0x45,0x53,0x54,0x00,0x00 } };
HDEVINFO hDevInfo = SetupDiGetClassDevs(
&GUID_DEVINTERFACE_USB_DEVICE,
NULL,
NULL,
DIGCF_PRESENT | DIGCF_DEVICEINTERFACE
);
DWORD dwIndex = 0;
SP_DEVICE_INTERFACE_DATA devInterfaceData;
ZeroMemory(&devInterfaceData, sizeof(SP_DEVICE_INTERFACE_DATA));
devInterfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);
BOOL bRet = FALSE;
while(TRUE)
{
bRet = SetupDiEnumDeviceInterfaces(
hDevInfo,
NULL,
&GUID_DEVINTERFACE_USB_DEVICE,
dwIndex,
&devInterfaceData
);
ULONG n = GetLastError();
if (!bRet)
{
if (GetLastError() == ERROR_NO_MORE_ITEMS)
{
break;
}
}
dwIndex++;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.251.17.30
→
06/29 22:31, , 1F
06/29 22:31, 1F
→
06/30 15:11, , 2F
06/30 15:11, 2F
→
07/01 22:35, , 3F
07/01 22:35, 3F
→
07/01 22:36, , 4F
07/01 22:36, 4F
→
07/01 22:41, , 5F
07/01 22:41, 5F
→
07/01 22:43, , 6F
07/01 22:43, 6F
→
07/01 22:43, , 7F
07/01 22:43, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章