DBT_DEVICEQUERYREMOVE 事件
系统将广播DBT_DEVICEQUERYREMOVE设备事件,以请求删除设备或媒体片段的权限。 此消息是应用程序和驱动程序为此删除做好准备的最后机会。 但是,任何应用程序都可以拒绝此请求并取消操作。
为了广播此设备事件,系统使用 WM_DEVICECHANGE 消息,其中 wParam 设置为 DBT_DEVICEQUERYREMOVE, lParam 集,如下所述。
LRESULT CALLBACK WindowProc(
HWND hwnd, // handle to window
UINT uMsg, // WM_DEVICECHANGE
WPARAM wParam, // device-change event
LPARAM lParam // event-specific data
);
参数
-
hwnd
-
窗口的句柄。
-
uMsg
-
WM_DEVICECHANGE消息标识符。
-
wParam
-
设置为 DBT_DEVICEQUERYREMOVE。
-
lParam
-
指向结构的指针,标识要删除的设备。 结构由与事件无关的标头组成,后跟描述设备的事件依赖成员。 若要使用此结构,请将结构视为DEV_BROADCAST_HDR结构,然后检查其dbch_devicetype成员来确定设备类型。
返回值
返回 TRUE 以授予删除设备的权限。
返回BROADCAST_QUERY_DENY以拒绝删除设备的权限。
备注
必须关闭设备的所有句柄,否则设备删除将失败。
示例
有关示例,请参阅 处理删除设备的请求。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows XP |
最低受支持的服务器 |
Windows Server 2003 |
标头 |
|