为什么SetupDiEnumDeviceInterfaces不成功
代码如下:BOOLBluetooth(LPCWSTRlpcAdapterID)//lpcAdapterID我传进去的是网卡的GUID的字符串形式{HDEVINFODevi...
代码如下:
BOOL Bluetooth(LPCWSTR lpcAdapterID)
//lpcAdapterID我传进去的是网卡的GUID的字符串形式
{
HDEVINFO DeviceInfoSet;
GUID InterfaceClassGuid;
SP_DEVICE_INTERFACE_DATA DeviceInterfaceData;
RPC_STATUS rpcRet;
rpcRet = UuidFromString((RPC_WSTR)lpcAdapterID, &InterfaceClassGuid);
DeviceInfoSet = SetupDiGetClassDevs((LPGUID) &InterfaceClassGuid, 0, 0,DIGCF_PRESENT);
if (DeviceInfoSet == INVALID_HANDLE_VALUE)
{
// Insert error handling here.
return FALSE;
}
DeviceInterfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);
BOOL bRet = SetupDiEnumDeviceInterfaces(DeviceInfoSet,NULL,
&InterfaceClassGuid,0,&DeviceInterfaceData);
if (bRet == 0){
DWORD dwRet = GetLastError();
return FALSE;
}
return TRUE;
}
其他都成功,运行到SetupDiEnumDeviceInterfaces时,就失败了,返回值bRet是0,调用GetLastError(),返回值dwRet是259。
请问高手怎么回事? 展开
BOOL Bluetooth(LPCWSTR lpcAdapterID)
//lpcAdapterID我传进去的是网卡的GUID的字符串形式
{
HDEVINFO DeviceInfoSet;
GUID InterfaceClassGuid;
SP_DEVICE_INTERFACE_DATA DeviceInterfaceData;
RPC_STATUS rpcRet;
rpcRet = UuidFromString((RPC_WSTR)lpcAdapterID, &InterfaceClassGuid);
DeviceInfoSet = SetupDiGetClassDevs((LPGUID) &InterfaceClassGuid, 0, 0,DIGCF_PRESENT);
if (DeviceInfoSet == INVALID_HANDLE_VALUE)
{
// Insert error handling here.
return FALSE;
}
DeviceInterfaceData.cbSize = sizeof(SP_DEVICE_INTERFACE_DATA);
BOOL bRet = SetupDiEnumDeviceInterfaces(DeviceInfoSet,NULL,
&InterfaceClassGuid,0,&DeviceInterfaceData);
if (bRet == 0){
DWORD dwRet = GetLastError();
return FALSE;
}
return TRUE;
}
其他都成功,运行到SetupDiEnumDeviceInterfaces时,就失败了,返回值bRet是0,调用GetLastError(),返回值dwRet是259。
请问高手怎么回事? 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询