フレームワーク デバイス オブジェクト
警告
UMDF 2 は UMDF の最新バージョンであり、UMDF 1 に取って代わるものです。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、Windows 10 の新しいバージョンでは UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは、UMDF 2 を使用する必要があります。
アーカイブされた UMDF 1 サンプルは、Windows 11, バージョン 22H2 - 2022 年 5 月 ドライバー サンプル アップデートでご確認いただけます。
詳しくは、UMDFの概要をご覧ください。
フレームワーク デバイス オブジェクトは、IWDFDevice インターフェイスによってドライバーに公開されます。 フレームワーク デバイス オブジェクトは、システム上のデバイスのフレームワーク表現です。 各デバイス オブジェクトには、親ドライバー オブジェクトがあります。
新しいデバイスがシステムに到着すると、フレームワークは IDriverEntry::OnDeviceAdd メソッドを呼び出してドライバーに到着を通知し、そして、この呼び出しで IWDFDriver と IWDFDeviceInitialize インターフェイスを渡します。 ドライバーは、新しいデバイスを初期化する IWDFDeviceInitialize インターフェイスのメソッドを呼び出すことができます。 たとえば、ドライバーは IWDFDeviceInitialize::RetrieveDevicePropertyStore メソッドを呼び出して、デバイスのインストールの一部として提供されるデバイス情報を照会します。 その後、ドライバーは IWDFDriver::CreateDevice メソッドを呼び出して、デバイス オブジェクトを構成および作成できます。
ドライバーは、フレームワーク デバイス オブジェクトを作成するときに、IPnpCallback、IPnpCallbackSelfManagedIo、IPnpCallbackHardware、IFileCallbackCleanup、および IFileCallbackClose インターフェイスを登録できます。 次に、ファイルのクリーンアップとクローズとプラグ アンド プレイ (PnP) イベントと電源管理 (PM) イベントが発生したときに、フレームワークがドライバーに通知します。 PnP と PM のサポートの詳細については、「UMDF ベースのドライバーでの PnP と電源管理」を参照してください。