次の方法で共有


IOCTL_HID_READ_REPORT IOCTL (hidport.h)

IOCTL_HID_READ_REPORT要求は、HIDClass デバイスから HID クラス ドライバーのバッファーに入力レポートを転送します。

HIDClass デバイスの一般的な情報については、「HID コレクションの 」を参照してください。

メジャー コード

IRP_MJ_DEVICE_CONTROL

入力バッファー

Parameters.DeviceIoControl.OutputBufferLength には、Irp->UserBufferで提供されるバッファーのサイズが含まれます。

入力バッファーの長さ

OutputBufferLength のサイズ

出力バッファー

HID ミニドライバーは、Irp->UserBuffer が指すシステム常駐バッファーに、デバイスから取得されたレポート データを格納します。

出力バッファーの長さ

UserBufferのサイズ。

状態ブロック

デバイスへの I/O を実行する HID ミニドライバーは、Irp->IoStatusの次のフィールドを設定します。

  • 情報 は、デバイスから転送されたバイト数に設定されます。
  • ステータス は、転送がエラーなしで完了した場合にSTATUS_SUCCESSに設定されます。 それ以外の場合は、適切な NTSTATUS エラー コードに設定されます。
デバイスへの I/O を実行するには、この IRP を使用して他のドライバーを呼び出す HID ミニドライバーは、状態ブロックの 情報 フィールドが正しいことを確認し、状態 フィールドの内容を変更しないようにする必要があります。

備考

IOCTL_HID_READ_REPORTは、通常、デバイスによって送信される入力レポートを継続的に完了するために使用されます。 この IOCTL は、PING ポン方式で HID クラス ドライバー (HIDCLASS) によって送信されます。 つまり、要求が満たされるとすぐに (完了)、別の要求をデバイスに送信して、データを継続的にレポートできます。 これは "非同期" メカニズムであるため、たとえば、デバイスはそれを使用して、変更が発生した状態の変化に関するデータをホストに送信できます。

必要条件

要件 価値
ヘッダー hidport.h (Hidport.h を含む)

関連項目

HidD_GetFeature

HidD_GetInputReport

HidD_SetFeature

HidD_SetOutputReport

IOCTL_HID_GET_FEATURE

IOCTL_HID_GET_INPUT_REPORT

IOCTL_HID_SET_FEATURE

IOCTL_HID_SET_OUTPUT_REPORT

IOCTL_HID_WRITE_REPORT