Share via


HidP_SetUsageValueArray関数 (hidpi.h)

HidP_SetUsageValueArray ルーチンは、指定した HID レポートで HID コントロールの使用値配列を設定します。

構文

NTSTATUS HidP_SetUsageValueArray(
  [in]      HIDP_REPORT_TYPE     ReportType,
  [in]      USAGE                UsagePage,
  [in]      USHORT               LinkCollection,
  [in]      USAGE                Usage,
  [in]      PCHAR                UsageValue,
  [in]      USHORT               UsageValueByteLength,
  [in]      PHIDP_PREPARSED_DATA PreparsedData,
  [in, out] PCHAR                Report,
  [in]      ULONG                ReportLength
);

パラメーター

[in] ReportType

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

[in] UsagePage

使用状況の使用状況ページを指定します。

[in] LinkCollection

使用法を含む リンク コレクション を指定します。 LinkCollection が 0 以外の場合、ルーチンは、このリンク コレクション内に存在する場合にのみ使用法を設定します。 LinkCollection が 0 の場合、ルーチンは、PreparsedData に関連付けられている最上位のコレクションで最初に見つかる使用法を設定します。

[in] Usage

使用法を指定します。

[in] UsageValue

使用法値配列に関連付けられているデータを含む呼び出し元によって割り当てられたバッファーへのポインター。

[in] UsageValueByteLength

UsageValue バッファーの長さをバイト単位で指定します。

[in] PreparsedData

最上位レベルの 準備済みデータへのポインター。

[in, out] Report

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

[in] ReportLength

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

戻り値

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

リターン コード 説明
HIDP_STATUS_SUCCESS
ルーチンは、使用値を正常に設定しました。
HIDP_STATUS_INVALID_REPORT_LENGTH
レポートの長さが無効です。
HIDP_STATUS_INVALID_REPORT_TYPE
指定されたレポートの種類が無効です。
HIDP_STATUS_BUFFER_TOO_SMALL
UsageValue バッファーのサイズ (バイト単位) が小さすぎます。
HIDP_STATUS_INCOMPATIBLE_REPORT_ID
使用状況は、指定したレポートには存在しませんが、指定した種類の別のレポートに存在します。
HIDP_STATUS_NOT_VALUE_ARRAY
指定した使用法は、使用法の値配列ではありません。
HIDP_STATUS_INVALID_PREPARSED_DATA
準備されたデータが無効です。
HIDP_STATUS_REPORT_DOES_NOT_EXIST
指定した型のレポートはありません。
HIDP_STATUS_NOT_IMPLEMENTED
使用値配列に指定されたデータ フィールドのレポート サイズは、8 ビットの倍数ではありません。
HIDP_STATUS_USAGE_NOT_FOUND
使用状況は、指定されたレポートの種類のレポートには存在しません。

注釈

UsageValue バッファーの必要なサイズ (バイト単位) は、使用値配列の HIDP_VALUE_CAPS 構造体の BitSize メンバーと ReportCount メンバーを掛け合わせ、結果を最も近いバイトに丸めることで決定されます。

HidP_SetUsageValueArray は、配列の各データ フィールドが 8 ビットの倍数である使用値配列のみをサポートします。

呼び出し元は、レポートで発生する必要があるとおりに UsageValue バッファーを設定する必要があります。

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

要件

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

こちらもご覧ください

HidP_SetScaledUsageValue

HidP_SetUsageValue

_HIDP_PREPARSED_DATA