次の方法で共有


DBT_DEVICEQUERYREMOVE イベント

システムは、DBT_DEVICEQUERYREMOVE デバイス イベントをブロードキャストして、デバイスまたはメディアの一部を削除するアクセス許可を要求します。 このメッセージは、アプリケーションとドライバーがこの削除に備える最後のチャンスです。 ただし、どのアプリケーションでもこの要求を拒否し、操作を取り消すことができます。

このデバイス イベントをブロードキャストするために、システムは wParamDBT_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