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
指向生成报表的顶级集合的预分析数据的指针,该集合位于 Report。
[in] Report
指向包含使用情况的报表的指针。
[in] ReportLength
指定位于 Report 的报表的长度(以字节为单位)。
返回值
HidP_GetScaledUsageValue 返回以下状态值之一:
返回代码 | 说明 |
---|---|
|
例程已成功返回 值。 |
|
指定的报表类型无效。 |
|
指定的报表长度无效 |
|
集合返回了非法的逻辑或物理值。 若要提取集合返回的值,请调用 HidP_GetUsageValue。 |
|
集合中缩放值的当前状态小于逻辑最小值或大于逻辑最大值,并且缩放值具有 NULL 状态。 |
|
集合中缩放值数据的当前状态小于逻辑最小值或大于逻辑最大值。 |
|
在指定顶级集合支持的任何报表中,都找不到指定的使用情况、使用情况页或链接集合。 |
|
指定的值不包含在指定的报表中,但包含在指定顶级集合支持的另一个报表中。 |
注解
必须在非分页池中分配 PreparsedData、 UsageValue 和 Report 中提供的调用方分配缓冲区。
用户模式应用程序和内核模式驱动程序必须使用 HidP_GetUsageValueArray 来提取 使用情况值数组的数据。
如果例程HIDP_STATUS_BAD_LOG_PHY_VALUES返回状态,应用程序或驱动程序可以调用 HidP_GetUsageValue 来提取原始使用情况数据。
有关详细信息,请参阅 HID 集合。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows 2000 和更高版本的 Windows 中可用。 |
目标平台 | 通用 |
标头 | hidpi.h (包括 Hidpi.h) |
Library | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |