DBT_DEVICEQUERYREMOVE事件

系統會廣播DBT_DEVICEQUERYREMOVE裝置事件,以要求移除裝置或媒體片段的許可權。 此訊息是應用程式和驅動程式準備進行這項移除的最後一個機會。 不過,任何應用程式都可以拒絕此要求並取消作業。

若要廣播此裝置事件,系統會使用wParam設定為 DBT_DEVICEQUERYREMOVE 和lParam集合的 WM_DEVICECHANGE訊息,如下所述。

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
標頭
Dbt.h

另請參閱

裝置事件

裝置管理事件

DEV_BROADCAST_HDR

WM_DEVICECHANGE