共用方式為


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

指定 HIDP_REPORT_TYPE 列舉值,指出位於 Report之 HID 報表的類型。

[in] UsagePage

指定使用量 使用頁面

[in] LinkCollection

指定包含使用方式的 連結集合。 如果 LinkCollection 為非零,則例程只會在此連結集合中設定使用方式。 如果 LinkCollection 為零,例程會設定它在與 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
針對使用量值陣列指定的數據欄位報表大小不是八位的倍數。
HIDP_STATUS_USAGE_NOT_FOUND
使用方式不存在於指定之報表類型的任何報表中。

言論

UsageValue 緩衝區所需的大小,取決於將 BitSize 乘以 ReportCount, 使用值數組 HIDP_VALUE_CAPS 結構的成員,並將結果四捨五入為最接近的位元組。

HidP_SetUsageValueArray 只支援使用值陣列,其中陣列的每個數據欄位都是八位的倍數。

呼叫端必須設定 UsageValue 緩衝區,就像報表中應該發生的一樣。

如需詳細資訊,請參閱 HID 集合

要求

要求 價值
最低支援的用戶端 適用於 Windows 2000 和更新版本的 Windows。
目標平臺 普遍
標頭 hidpi.h (包括 Hidpi.h)
連結庫 Hidparse.lib
IRQL <= DISPATCH_LEVEL

另請參閱

HidP_SetScaledUsageValue

HidP_SetUsageValue

_HIDP_PREPARSED_DATA