USB クライアント ドライバーで必要なヘッダーとライブラリ

この記事では、Windows Driver Model (WDM) USB クライアント ドライバーの作成に必要なヘッダーとライブラリを一覧表示します。

特定のデバイス ドライバー インターフェイス (DDI) のヘッダーとライブラリを見つけるには、USB リファレンスのリファレンス ページを参照してください。

ヘッダー

ヘッダー ファイル Path Includes 説明
hubbusif.h Include\km USB ポート ドライバーによってエクスポートされ、USB ハブ ドライバーで使用できるサービスを定義します。
usb.h Include\shared クライアント ドライバーが USB ドライバー スタックに要求を送信するために必要な USB 要求ブロック (URB) の URB 構造体を定義します。
usb100.h Include\shared 公式の USB 1.0 仕様に従って、USB 記述子を定義します。
usb200.h Include\shared usb100.h 公式の USB 2.0 仕様に従って、USB 記述子を定義します。
usbbusif.h Include\km USBD.SYS に直接リンクするのではなく、ポート ドライバーに直接リンクする USB クライアント ドライバー (FDO) に対して定義されているバス インターフェイスを定義します。
usbdi.h Include\shared usb.h
usbioctl.h
特定の種類の要求の URL を書式設定するためのヘルパー マクロを定義します。
usbdlib.h Include\km USB ドライバー スタックに要求を送信するために USB クライアント ドライバーによって使用される DDI を定義します。
usbdrivr.h Include\km usb.h
usbdlib.h
usbioctl.h
usbbusif.h
USB_KERNEL_IOCTL を定義します。
usbioctl.h Include\shared usbiodef.h
usb200.h
USB ドライバー スタックでサポートされる IOCTL コードを定義します。 クライアント ドライバー用のカーネル モード IOCTL コード、アプリケーション用のユーザー モード IOCTL コードが含まれます。
usbiodef.h Include\shared インターフェイスと WMI GUID を定義します。
usbkern.h Include\km usbioctl.h 非推奨。
usbrpmif.h Include\um usb100.h
windef.h
winapifamily.h
USB デバイスのドライバー リダイレクト操作を実行するために、アプリケーションが自身を登録するための関数を定義します。
usbspec.h Include\shared 公式の USB 仕様に従って、デバイス ドライバー インターフェイスを定義します。
usbuser.h Include\um USB ポート ドライバーでサポートされるユーザー モード IOCTL コードを定義します。
winusb.h Include\um winapifamily.h
winusbio.h
Winusb.dll によって公開される WinUSB 関数を定義します。これは、USB デバイスのファンクション ドライバーとしてインストールされている Winusb.sys に要求を送信するアプリケーションによって使用されます。
winusbio.h Include\shared winapifamily.h
usb.h
WinUSB 関数のフラグを定義します。

ライブラリ

ライブラリ Path 説明
usbd.lib \Lib\win8\km
\Lib\win7\km
\Lib\winv6.3\km
USB ドライバー スタックから情報を取得し、要求の URL を書式設定するためのヘルパー ルーチンを提供します。
usbrpm.lib \Lib\win8\km
\Lib\win7\km
\Lib\winv6.3\km
Microsoft が提供するドライバーをサード パーティの RPM ドライバーに置き換える操作を実行するアプリケーションの関数を提供します。
usbdex.lib \Lib\win8\km
\Lib\win7\km
\Lib\winv6.3\km
クライアント ドライバーが基になる USB ドライバー スタックに要求を送信するためのヘルパー ルーチンを提供します。 ライブラリが読み込まれ、ビルド時にクライアント ドライバー モジュールに静的にリンクされます。 これらのルーチンを呼び出すクライアント ドライバーは、Windows Vista 以降のバージョンの Windows で実行できます。
winusb.lib \Lib\win8\km
\Lib\win8\um
\Lib\win7\km
\Lib\win7\um
\Lib\winv6.3\km
\Lib\winv6.3\um
ユーザー モード クライアント ドライバーまたはアプリケーションが、関数ドライバーとして読み込まれた WINUSB.SYS USB デバイスと通信するための関数を提供します。

Windows 8 でのヘッダーの変更

Windows 8 用 Windows Driver Kit (WDK) 以降では、ヘッダー ファイル usbspec.h が USBProtocolDefs.h に置き換えられます。

新しいヘッダー ファイル usbspec.h は、公式の USB 仕様に従って定義されている DDI のプロトコル定義を提供します。 ヘッダー ファイルには、USB 3.0 仕様の DDI が含まれています。