PEP_ACPI_QUERY_DEVICE_CONTROL_RESOURCES结构(pep_x.h)

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_BUFFER_TOO_SMALL。

[in] BiosResources[ANYSIZE_ARRAY]

PEP 向其写入包含所请求资源列表的 ACPI_METHOD_ARGUMENT 结构的输出缓冲区。 此结构 数据 成员是数组中的第一个成员,该成员可能扩展到结构末尾。 BiosResourcesSize 指定的缓冲区大小包括 ACPI_METHOD_ARGUMENT 结构和遵循此结构的任何 数据 数组元素。

言论

PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 通知使用此结构。 发送此通知时,RequestFlagsBiosResourcesSizeBiosResources 成员包含 Windows 电源管理框架(PoFx)提供的输入值。 如果 BiosResourcesSize 输入值太小,PEP 应覆盖此值。 状态 成员包含 PEP 写入此结构的输出值,以响应通知。

如果 BiosResourcesSize 成员中指定的输入值小于所需大小,PEP 将覆盖 BiosResourcesSize 输入值,并将 状态 成员设置为STATUS_BUFFER_TOO_SMALL。 作为响应,PoFx 将尝试分配所需大小的缓冲区,并向此设备的 PEP 发送第二个 PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES 通知。

要求

要求 价值
最低支持的客户端 从 Windows 10 开始支持。
标头 pep_x.h (包括 Pep_x.h)

另请参阅

ACPI_METHOD_ARGUMENT

PEP_NOTIFY_ACPI_QUERY_DEVICE_CONTROL_RESOURCES

PEP_NOTIFY_ACPI_REGISTER_DEVICE