HidP_GetCollectionDescription函数 (hidpddi.h)
使用集合说明和指定报表描述符的相应报表 ID 信息填充设备说明块。 HID 微型驱动程序通常不需要调用此函数。 而是将报告描述符返回到 Hidclass 驱动程序,以响应 IOCTL_HID_GET_REPORT_DESCRIPTOR。
语法
NTSTATUS HidP_GetCollectionDescription(
[in] PHIDP_REPORT_DESCRIPTOR ReportDesc,
[in] ULONG DescLength,
[in] POOL_TYPE PoolType,
[out] PHIDP_DEVICE_DESC DeviceDescription
);
参数
[in] ReportDesc
指向包含原始报表描述符的 UCHAR 数组的指针。
[in] DescLength
报表描述符数组的长度。
[in] PoolType
一个 POOL_TYPE-value,指示从中分配链接列表内存的池类型。 这包括 HIDP_DEVICE_DESC的每个 HIDP_COLLECTION_DESC 数组元素,每个 HIDP_COLLECTION_DESC中的每个 HIDP_PREPARSED_DATA,每个 HIDP_REPORT_IDS 数组元素 HIDP_DEVICE_DESC。
[out] DeviceDescription
指向 HIDP_DEVICE_DESC 结构的指针,该结构用集合描述符填充为链接列表的设备描述符块。 这是调用方分配的结构。 但是,它的 HIDP_COLLECTION_DESC 数组元素和 HIDP_REPORT_IDS 数组元素由此函数分配。
返回值
HidP_GetCollectionDescription 可以返回以下值之一:如果成功填充设备说明块,TRUE。 否则,它将返回 FALSE。
返回值 | 描述 |
---|---|
|
成功分析报表描述符并分配了描述设备所需的内存块。 |
|
未能在报表描述符中找到顶级集合。 |
|
报告描述符中检测到错误。 请参阅 HIDP_DEVICE_DESC 结构的 Dbg 字段中的错误代码。 |
|
当报表描述符需要更多数据时,找到报告描述符的末尾。 |
|
未能分配内存。 |
|
未能分析报表描述符中的项。 |
|
在描述符中找到 0 的报告 ID。 |
言论
对于由 ReportDesc 参数指定的原始报表描述符,HidP_GetCollectionDescription 填充 DeviceDescription 块,其中包含由调用方分配的集合描述符链接列表以及给定报表描述符描述的相应报告 ID 信息。 收集信息和 ReportID 信息的内存是根据 PoolType 值分配的。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 在 Windows 2000 及更高版本的 Windows 中可用。 |
目标平台 | 普遍 |
标头 | hidpddi.h (包括 Hidpddi.h) |
库 | Hidparse.lib |
IRQL | <= DISPATCH_LEVEL |