HID コレクションを開く
このセクションでは、HID クライアントが HID クラス ドライバー (HIDClass) と通信して、デバイスの HID コレクションを操作する方法について説明します。
HID クライアントは、次のモードで動作できます。
- Use- Mode Application/Driver
- Kernel-Mode ドライバー
次のセクションでは、HID クライアントが前の一覧のいずれかのモードを使用して HIDClass と通信する方法を示します。
このセクションでは、ユーザー モード アプリケーションとカーネル モード ドライバーが HID コレクションを操作する方法について説明します。
一般に、ユーザー モード アプリケーションでは次の処理が行われます。
デバイス インストール関数 (SetupDiXxx 関数) を呼び出して、HID コレクションを検索して識別します。
CreateFile を呼び出して、HID コレクション上のファイルを開きます。
**HidD_**Xxx HID サポート ルーチンを呼び出して、HID コレクションの 準備されたデータ と HID コレクションに関する情報を取得します。
ReadFile を呼び出して入力レポートを読み取り、WriteFile を呼び出して出力レポートを送信します。
**HidP_**Xxx HID サポート ルーチンを呼び出して HID レポートを解釈します。
一般に、カーネル モード ドライバーは次の処理を行います。
HID コレクションを検索して識別します
ドライバーが関数またはフィルター ドライバーの場合は、コレクションのデバイス スタックに既にアタッチされています。 ただし、ドライバーがコレクションのデバイス スタックに接続されていない場合、ドライバーは プラグ アンド プレイ通知を使用できます。
IRP_MJ_CREATE要求を使用して HID コレクションを開きます
IOCTL_HID_Xxx 要求を使用して、HID コレクションの準備されたデータと HID コレクションに関する情報を取得します
IRP_MJ_READ要求を使用して入力レポートを読み取り、IRP_MJ_WRITE要求を使用して出力レポートを送信します
**HidP_**XXX HID サポート ルーチンを呼び出して HID レポートを解釈する