メッセージのWM_DEVICECHANGE

デバイスまたはコンピューターのハードウェア構成の変更をアプリケーションに通知します。

ウィンドウは、 WindowProc 関数を介してこのメッセージを受け取ります。

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.h ヘッダー ファイルの次のいずれかの値を指定できます。

意味

DBT_DEVNODES_CHANGED0x0007
デバイスがシステムに追加されたか、システムから削除されました。

DBT_QUERYCHANGECONFIG0x0017
現在の構成を変更するためのアクセス許可が要求されます (ドックまたはドッキング解除)。

DBT_CONFIGCHANGED0x0018
ドックまたはドッキング解除により、現在の構成が変更されました。

DBT_CONFIGCHANGECANCELED0x0019
現在の構成を変更する要求 (ドックまたはドッキング解除) が取り消されました。

DBT_DEVICEARRIVAL0x8000
デバイスまたはメディアが挿入され、使用可能になりました。

DBT_DEVICEQUERYREMOVE0x8001
デバイスまたはメディアの一部を削除するためのアクセス許可が要求されます。 どのアプリケーションでも、この要求を拒否し、削除を取り消すことができます。

DBT_DEVICEQUERYREMOVEFAILED0x8002
デバイスまたはメディアの削除要求が取り消されました。

DBT_DEVICEREMOVEPENDING0x8003
デバイスまたはメディアの一部が削除されようとしています。 拒否できません。

DBT_DEVICEREMOVECOMPLETE0x8004
デバイスまたはメディアが削除されました。

DBT_DEVICETYPESPECIFIC0x8005
デバイス固有のイベントが発生しました。

DBT_CUSTOMEVENT0x8006
カスタム イベントが発生しました。

DBT_USERDEFINED0xFFFF
このメッセージの意味はユーザー定義です。

lParam

イベント固有のデータを含む構造体へのポインター。 その形式は 、wParam パラメーターの値によって異なります。 詳細については、各イベントのドキュメントを参照してください。

戻り値

要求を許可するには 、TRUE を 返します。

要求を拒否するBROADCAST_QUERY_DENYを返します。

注釈

取り出しやロックなど、ソフトウェアで制御可能な機能を提供するデバイスの場合、システムは通常、アプリケーションとデバイス ドライバーがデバイスの正常な使用を終了できるように 、DBT_DEVICEREMOVEPENDING メッセージを送信します。 システムがデバイスを強制的に取り外した場合、その前 にDBT_DEVICEQUERYREMOVE メッセージが送信されない可能性があります。

要件

要件
サポートされている最小のクライアント Windows XP
サポートされている最小のサーバー Windows Server 2003
Header
Winuser.h (Windows.h または Dbt.h を含む)

こちらもご覧ください

DBT_CONFIGCHANGECANCELED

DBT_CONFIGCHANGED

DBT_CUSTOMEVENT

DBT_DEVICEARRIVAL

DBT_DEVICEQUERYREMOVE

DBT_DEVICEQUERYREMOVEFAILED

DBT_DEVICEREMOVECOMPLETE

DBT_DEVICEREMOVEPENDING

DBT_DEVICETYPESPECIFIC

DBT_DEVNODES_CHANGED

DBT_QUERYCHANGECONFIG

DBT_USERDEFINED