Share via


HidP_GetData関数 (hidpi.h)

HidP_GetData ルーチンは、指定したレポートについて、現在 ON (1) に設定されているすべての HID コントロール ボタンのデータ インデックスを識別するHIDP_DATA構造体の配列と、すべての HID コントロール値に関連付けられているデータ インデックスとデータを返します。

構文

NTSTATUS HidP_GetData(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [out]     PHIDP_DATA           DataList,
  [in, out] PULONG               DataLength,
  [in]      PHIDP_PREPARSED_DATA PreparsedData,
  [in]      PCHAR                Report,
  [in]      ULONG                ReportLength
);

パラメーター

[in] ReportType

Report にある HID レポートの種類を示す HIDP_REPORT_TYPE 列挙子の値を指定 します

[out] DataList

ルーチンが現在 ON に設定されているすべてのボタンと値に関連付けられているデータに関する情報を返すために使用する、HIDP_DATA構造体の呼び出し元によって割り当てられた配列を指定します。

[in, out] DataLength

入力時に、呼び出し元によって割り当てられた DataList 配列が保持する構造体の数を指定します。 出力時に、ルーチンがデータを返すことができるコントロールの数を指定します。これには、現在 ON に設定されているすべてのボタンとすべてのコントロール値が含まれます。

[in] PreparsedData

レポートにある HID レポートに関連付けられている最上位のコレクションの準備されたデータへのポインター。

[in] Report

HID レポートへのポインター。

[in] ReportLength

Report にある HID レポートのサイズをバイト単位で指定します。これは、コレクションのHIDP_CAPS構造体でHidP_GetCapsによって返される指定されたレポートの種類のレポートの長さと等しい必要があります。

戻り値

HidP_GetData は、次のいずれかの状態値を返します。

リターン コード 説明
HIDP_STATUS_SUCCESS
すべてのコントロール データが正常に返されました。
HIDP_STATUS_INVALID_REPORT_TYPE
ReportType で指定された レポートの 種類が無効です
HIDP_STATUS_INVALID_PREPARSED_DATA
PreparsedData で指定された準備済みデータが無効です
HIDP_STATUS_INVALID_REPORT_LENGTH
HID レポートのサイズ (バイト単位) は、指定したレポートの種類のコレクションの HIDP_CAPS 構造体で指定された長さと等しくありません。
HIDP_STATUS_REPORT_DOES_NOT_EXIST
最上位のコレクションには、指定した型のレポートがありません。
HIDP_STATUS_BUFFER_TOO_SMALL
DataList 配列が小さすぎて、現在 ON に設定されているすべてのボタンと HID レポート内のすべての値を説明できません。

注釈

ユーザー モード アプリケーションとカーネル モード ドライバーは 、HidP_MaxDataListLength を呼び出して、HidP_GetDataが返すことができるHIDP_DATA構造体の最大数 決定します。

HidP_GetData、使用値配列のデータを返しません。

詳細については、「 HID コレクション」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 以降のバージョンの Windows で使用できます。
対象プラットフォーム ユニバーサル
Header hidpi.h (Hidpi.h を含む)
Library Hidparse.lib
IRQL <= DISPATCH_LEVEL

こちらもご覧ください

HIDP_DATA

HidP_MaxDataListLength

HidP_SetData

_HIDP_PREPARSED_DATA