HidP_GetScaledUsageValue函式 (hidpi.h)
HidP_GetScaledUsageValue 例程會傳回從 HID 報表擷取之 HID 控制件值的帶正負號和縮放結果。
語法
NTSTATUS HidP_GetScaledUsageValue(
[in] HIDP_REPORT_TYPE ReportType,
[in] USAGE UsagePage,
[in] USHORT LinkCollection,
[in] USAGE Usage,
[out] PLONG UsageValue,
[in] PHIDP_PREPARSED_DATA PreparsedData,
[in] PCHAR Report,
[in] ULONG ReportLength
);
參數
[in] ReportType
指定 HIDP_REPORT_TYPE 列舉值,識別包含 HID 使用方式 值的 HID 報表類型。
[in] UsagePage
指定要擷取之值的使用量頁面。
[in] LinkCollection
指定要擷取之值的連結集合標識碼。 零的LinkCollection值會識別最上層集合。
[in] Usage
指定要擷取的值使用方式。
[out] UsageValue
例程傳回帶正負號和縮放值的緩衝區指標。
[in] PreparsedData
[in] Report
包含使用量之報表的指標。
[in] ReportLength
指定位於 Report之報表的長度,以位元組為單位。
傳回值
HidP_GetScaledUsageValue 會傳回下列其中一個狀態值:
傳回碼 | 描述 |
---|---|
HIDP_STATUS_SUCCESS | 例程已成功傳回 值。 |
HIDP_STATUS_INVALID_REPORT_TYPE | 指定的報表類型無效。 |
HIDP_STATUS_INVALID_REPORT_LENGTH | 指定的報表長度無效。 |
HIDP_STATUS_BAD_LOG_PHY_VALUES | 集合傳回不合法的邏輯或實體值。 若要擷取集合傳回的值,請呼叫 HidP_GetUsageValue。 |
HIDP_STATUS_NULL | 集合中縮放值的目前狀態小於邏輯最小值或大於邏輯最大值,而調整值具有 NULL 狀態。 |
HIDP_STATUS_VALUE_OUT_OF_RANGE | 集合中縮放值數據的目前狀態小於邏輯最小值或大於邏輯最大值。 |
HIDP_STATUS_USAGE_NOT_FOUND | 在指定的最上層集合所支援的任何報表中,找不到指定的使用方式、使用方式頁面或連結集合。 |
HIDP_STATUS_INCOMPATIBLE_REPORT_ID | 指定的值不包含在指定的報表中,但包含在指定的最上層集合所支援的另一個報表中。 |
言論
調整值是指未經調整的原始 HID 數據的輸出,這些輸出會根據特定參數修改,例如敏感度和裝置的範圍。 這項調整可讓您更有意義地解譯與裝置預定用途相關的數據。
如需進一步瞭解 HID 報表的解譯方式和縮放值的重要性,請參閱 解譯 HID 報表。
PreparsedData、UsageValue和 Report 所提供呼叫端配置的緩衝區,必須從非分頁集區配置。
使用者模式應用程式和內核模式驅動程序必須使用 HidP_GetUsageValueArray 來擷取 使用值陣列的數據。
如果例程傳回狀態HIDP_STATUS_BAD_LOG_PHY_VALUES,應用程式或驅動程式可以呼叫 HidP_GetUsageValue 來擷取原始使用量數據。
如需詳細資訊,請參閱 HID 集合。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 適用於 Windows 2000 和更新版本的 Windows。 |
目標平臺 | 普遍 |
標頭 | hidpi.h (包括 Hidpi.h) |
連結庫 | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |