次の方法で共有


USB 固有の UMDF 1.x インターフェイス

警告

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 の概要」をご覧ください。

USB デバイスには、1 つ以上の構成を含めることができます。 各構成には複数のインターフェイス管理者を置くことができます。 各インターフェイスは 1 つ以上の代替設定に関連付けられ、各代替設定は 1 つ以上のエンドポイントを定義します。 エンドポイントは、デバイス ハードウェア上のバッファーを表します。

パイプは、現在の代替設定のホスト コントローラーとエンドポイント間の接続のソフトウェア抽象化です。 パイプは I/O のターゲットにすることができ、IWDFUsbTargetPipe インターフェイスによって UMDF で公開されます。

USB 固有の UMDF インターフェイスは、WinUSB アーキテクチャの上に構築されています。 設計上、WinUSB では、複数の構成デバイスの最初の構成にのみアクセスできます。 したがって、WinUSB インターフェイスでは、選択構成要求を送信する機能は公開されません。 そのため、UMDF の I/O ターゲット機能では、最初のデバイス構成以外のデバイス構成の選択はサポートされません。

USB 固有の UMDF インターフェイスには、一般的な USB モデルと同様のオブジェクト階層があります。 UMDF ドライバーは、IWDFUsbTargetDevice インターフェイスによって公開されるターゲット デバイス オブジェクトを作成します。 その後、ドライバーは IWDFUsbTargetDevice のメソッドを使用して、IWDFUsbInterface のインスタンスによって公開される USB インターフェイスにアクセスできます。 ドライバーは、設定とエンドポイントを操作する IWDFUsbInterface メソッドを呼び出すことができます。

USB 固有の UMDF インターフェイス階層を次の表に示します。

USD 固有の UMDF インターフェイス 派生元
IWDFUsbTargetDevice IWDFIoTarget
IWDFUsbInterface IWDFObject
IWDFUsbTargetPipe IWDFIoTarget

IWDFUsbTargetDevice インターフェイスと IWDFUsbTargetPipe インターフェイスは IWDFIoTarget インターフェイスから派生するため、I/O ターゲット オブジェクトを公開します。 IWDFUsbInterface インターフェイスは IWDFIoTarget (IWDFUsbInterface は IWDFObject インターフェイスから派生) から派生しないため、I/O ターゲット オブジェクトは公開されません。 インターフェイスの詳細を検出および操作するために送信されたすべての I/O は、ターゲット デバイスに送信されます。

簡単な UMDF ベースの USB クライアント ドライバーを記述する手順については、「最初の USB クライアント ドライバー (UMDF)を記述する方法」をご参照ください。

UMDF ベースの USB クライアント ドライバーに必要なソース コードについては、「USB クライアント ドライバーのコード構造 (UMDF) について」を参照してください。