pepfx.h) (PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 结构
PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 结构包含控制设备电源所需的原始资源列表。
语法
typedef struct _PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES {
[in] PEPHANDLE DeviceHandle;
[in] ULONG RequestFlags;
[out] NTSTATUS Status;
[in, out] SIZE_T BiosResourcesSize;
ACPI_METHOD_ARGUMENT BiosResources[ANYSIZE_ARRAY];
} PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES, *PPEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES;
成员
[in] DeviceHandle
一个 PEPHANDLE 值,该值标识设备对 ACPI 服务的注册。 平台扩展插件 (PEP) 提供此句柄以响应以前的 PEP_NOTIFY_ACPI_REGISTER_DEVICE 通知。
[in] RequestFlags
一组输入标志。 当前没有为此成员定义标志,该成员始终设置为PEP_ACPI_QDCR_FLAG_NONE (0x0) 。
[out] Status
一个 NTSTATUS 值,该值指示此查询的状态。 如果 PEP 成功提供请求的资源列表,请将此成员设置为 STATUS_SUCCESS。 设置为 STATUS_BUFFER_TOO_SMALL指示输出缓冲区不够大,无法包含资源列表。
[in, BiosResourcesSize
输入时,为 BiosResources 成员分配的缓冲区的大小(以字节为单位)。 此缓冲区大小包括可能跟随此成员的任何关联数据。
如果此缓冲区的大小不足以包含 ACPI_METHOD_ARGUMENT 结构及其关联数据,则 PEP 会用所需的大小覆盖 BiosResourcesSize 的输入值,并将 Status 成员设置为STATUS_BUFFER_TOO_SMALL。
[in] BiosResources[ANYSIZE_ARRAY]
PEP 向其写入包含所请求资源列表 的ACPI_METHOD_ARGUMENT 结构的输出缓冲区。 此结构的 Data 成员是数组中的第一个成员,该成员可能扩展到结构末尾。 BiosResourcesSize 指定的缓冲区大小包括ACPI_METHOD_ARGUMENT结构和此结构后面的任何 Data 数组元素。
注解
此结构由 PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 通知使用。 结构的 RequestFlags、 BiosResourcesSize 和 BiosResources 成员包含发送此通知时 Windows 电源管理框架 (PoFx) 提供的输入值。 如果 BiosResourcesSize 输入值太小,则 PEP 应覆盖此值。 Status 成员包含 PEP 写入此结构以响应通知的输出值。
如果 BiosResourcesSize 成员中指定的输入值小于所需大小,则 PEP 会用所需大小覆盖 BiosResourcesSize 输入值,并将 Status 成员设置为STATUS_BUFFER_TOO_SMALL。 作为响应,PoFx 将尝试分配所需大小的缓冲区,并将第二个 PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 通知发送到此设备的 PEP。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 10 开始支持。 |
标头 | pepfx.h (包括 Pep_x.h) |