我正在尝试注册设备通知以检测 Windows 中的 USB 闪存驱动器。以下是我的代码部分:
ZeroMemory( &NotificationFilter, sizeof(NotificationFilter) );
NotificationFilter.dbcc_size = sizeof(DEV_BROADCAST_DEVICEINTERFACE);
NotificationFilter.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE;
//NotificationFilter.dbcc_classguid = GUID_DEVINTERFACE_USBSTOR;
HDEVNOTIFY hDevNotify = RegisterDeviceNotification(
&serviceStatusHandle,
&NotificationFilter,
DEVICE_NOTIFY_SERVICE_HANDLE);
我正在尝试使用我的服务状态句柄进行注册,因为此代码在服务中运行。hDevNotify 返回 NULL 并getLastError()
在此之后返回 13(INVALID_DATA)。
我正在 Windows XP 机器上尝试此代码。
我该如何解决这个问题?