IOCTL_HID_READ_REPORT IOCTL (hidport.h)
IOCTL_HID_READ_REPORT要求は、HIDClass デバイスから HID クラス ドライバーのバッファーに入力レポートを転送します。
HIDClass デバイスの一般的な情報については、「HID コレクションの 」を参照してください。
メジャー コード
入力バッファー
Parameters.DeviceIoControl.OutputBufferLength には、Irp->UserBufferで提供されるバッファーのサイズが含まれます。
入力バッファーの長さ
OutputBufferLength のサイズ
出力バッファー
HID ミニドライバーは、Irp->UserBuffer が指すシステム常駐バッファーに、デバイスから取得されたレポート データを格納します。
出力バッファーの長さ
UserBufferのサイズ。
状態ブロック
デバイスへの I/O を実行する HID ミニドライバーは、Irp->IoStatusの次のフィールドを設定します。
- 情報 は、デバイスから転送されたバイト数に設定されます。
- ステータス は、転送がエラーなしで完了した場合にSTATUS_SUCCESSに設定されます。 それ以外の場合は、適切な NTSTATUS エラー コードに設定されます。
備考
IOCTL_HID_READ_REPORTは、通常、デバイスによって送信される入力レポートを継続的に完了するために使用されます。 この IOCTL は、PING ポン方式で HID クラス ドライバー (HIDCLASS) によって送信されます。 つまり、要求が満たされるとすぐに (完了)、別の要求をデバイスに送信して、データを継続的にレポートできます。 これは "非同期" メカニズムであるため、たとえば、デバイスはそれを使用して、変更が発生した状態の変化に関するデータをホストに送信できます。
必要条件
要件 | 価値 |
---|---|
ヘッダー | hidport.h (Hidport.h を含む) |