次の方法で共有


HidD_GetInputReport関数 (hidsdi.h)

HidD_GetInputReport ルーチンは、最上位のコレクションから入力レポートを返します。

コレクションの現在の状態を取得するには、このルーチンのみを使用します。 アプリケーションがこのルーチンを使用して入力レポートを継続的に取得しようとすると、レポートが失われる可能性があります。 詳細については、「 ユーザー モード アプリケーションによる HID レポートの取得」を参照してください。

構文

BOOLEAN HidD_GetInputReport(
  [in]  HANDLE HidDeviceObject,
  [out] PVOID  ReportBuffer,
  [in]  ULONG  ReportBufferLength
);

パラメーター

[in] HidDeviceObject

最上位のコレクションに対する開いているハンドル。

[out] ReportBuffer

呼び出し元が HID レポート ID を指定するために使用し、指定した入力レポートを返すために 使用HidD_GetInputReport 呼び出し元によって割り当てられた入力レポート バッファーへのポインター。

このパラメーターの詳細については、「解説」セクションを参照してください。

[in] ReportBufferLength

レポート バッファーのサイズ (バイト単位)。 レポート バッファーは、入力レポートを保持するのに十分な大きさと、レポート ID を指定する 1 つの追加バイトである必要があります。 レポート ID を使用しない場合、ID 値は 0 です。

戻り値

成功した場合、HidD_GetInputReportは TRUE を返します。それ以外の場合は、FALSE を返します。 GetLastError を使用して、拡張エラー情報を取得します。

注釈

正しい ReportBufferLength は、呼び出しから返される最上位レベルのコレクションのHIDP_CAPS構造体の InputReportByteLength メンバーによって指定HidP_GetCaps

HidD_GetInputReport ルーチンを呼び出す前に、呼び出し元は次の操作を行う必要があります。

  • 最上位のコレクションにレポート ID が含まれている場合、呼び出し元は ReportBuffer パラメーターの最初のバイトを 0 以外のレポート ID に設定する必要があります。
  • 最上位のコレクションにレポート ID が含まれていない場合、呼び出し元は ReportBuffer パラメーターの最初のバイトを 0 に設定する必要があります。

入力レポートは ReportBuffer パラメーターで返されます。 レポート ID に応じて、呼び出し元は次のいずれかの関数を呼び出してレポートを解析します。

HID レポートを解析する方法の例については、 HClient サンプル アプリケーションを参照してください。

HidD_GetInputReportを呼び出すことができるのは、ユーザー モード アプリケーションだけです。 カーネル モード ドライバーでは、 IOCTL_HID_GET_INPUT_REPORT要求を使用できます。

詳細については、「 HID レポートの解釈」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP 以降のバージョンの Windows で使用できます。
対象プラットフォーム ユニバーサル
Header hidsdi.h (Hidsdi.h を含む)
Library Hid.lib
[DLL] Hid.dll

こちらもご覧ください