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 列舉值,指出位於 報表的 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 會傳回下列其中一個狀態值:
傳回碼 | Description |
---|---|
|
例程已成功設定使用值。 |
|
報表長度無效。 |
|
指定的報表類型無效。 |
|
UsageValue 緩衝區的大小,以位元組為單位。 |
|
使用方式不存在於指定的報表中,但它存在於指定類型的不同報表中。 |
|
指定的使用方式不是使用值陣列。 |
|
預先剖析的數據無效。 |
|
沒有指定類型的報表。 |
|
為使用量值陣列指定的數據欄位報表大小不是八位的倍數。 |
|
使用方式不存在於指定之報表類型的任何報表中。 |
備註
UsageValue 緩衝區的必要大小,以位元組為單位,是將使用量值陣列HIDP_VALUE_CAPS結構的 BitSize 和 ReportCount 成員相乘,並將結果四捨五入到最接近的位元組。
HidP_SetUsageValueArray 僅支援使用值陣列,其中陣列的每個數據欄位都是八位的倍數。
呼叫端必須完全符合在報表中發生的 UsageValue 緩衝區。
如需詳細資訊,請參閱 HID 集合。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Windows 2000 和更新版本的 Windows。 |
目標平台 | Universal |
標頭 | hidpi.h (包含 Hidpi.h) |
程式庫 | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |