Windows SDK 函数RegisterDeviceNotification失败问题
计划开发一个USB hid设备插拔检测程序。
在调用RegisterDeviceNotification()函数的时候总是注册失败。 如下是我的代码片断:
HidD_GetHidGuid(&m_guidHID);
// 注册设备的GUID,以便响应系统热拔插消息
// 设备的GUID, 不同的设备有不同的GUID,根据实际情况设定
DEV_BROADCAST_DEVICEINTERFACE DevInt;
memset(&DevInt,0,sizeof(DEV_BROADCAST_DEVICEINTERFACE));
DevInt.dbcc_size = sizeof(DEV_BROADCAST_DEVICEINTERFACE);
DevInt.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE;
DevInt.dbcc_classguid = m_guidHID;
HDEVNOTIFY hNotifyDevNode;
hNotifyDevNode = RegisterDeviceNotification(hWnd,&DevInt, //hWnd我通过TForm类的Handle成员传入。
DEVICE_NOTIFY_WINDOW_HANDLE);
执行的结果是RegisterDeviceNotification()函数总是返回NULL。
开发环境是C++ Builder,SDK环境是Windows xp sp2 SDK.
多方查询资料无果,恳请大家指教。