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

指定位于报表报表的长度(以字节为单位)。

返回值

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 报告

PreparsedDataUsageValue提供的调用方分配的缓冲区,并且必须从非分页池分配 报表

用户模式应用程序和内核模式驱动程序必须使用 HidP_GetUsageValueArray 来提取 使用值数组的数据。

如果例程返回状态HIDP_STATUS_BAD_LOG_PHY_VALUES,应用程序或驱动程序可以调用 HidP_GetUsageValue 来提取原始使用情况数据。

有关详细信息,请参阅 HID 集合

要求

要求 价值
最低支持的客户端 在 Windows 2000 及更高版本的 Windows 中可用。
目标平台 普遍
标头 hidpi.h (包括 Hidpi.h)
Hidparse.lib
IRQL <= DISPATCH_LEVEL

另请参阅