PoFxQueryCurrentComponentPerfState 例程检索组件性能状态集中的活动性能状态。
Syntax
NTSTATUS PoFxQueryCurrentComponentPerfState(
[in] POHANDLE Handle,
[in] ULONG Flags,
[in] ULONG Component,
[in] ULONG SetIndex,
[in] PULONGLONG CurrentPerf
);
参数
[in] Handle
一个表示设备注册电源管理框架(PoFx)的句柄。 设备驱动程序以前从 PoFxRegisterDevice 例程收到此句柄。
[in] Flags
设置为 0。 目前,此例程未定义任何标志。
[in] Component
标识正在检索其性能状态的组件的索引。 此参数是PO_FX_DEVICE结构中组件数组的索引,设备驱动程序用于向 PoFx 注册设备。 如果 Components 数组包含 N 个元素,则组件索引范围为 0 到 N–1。
[in] SetIndex
标识正在查询其性能的性能状态集的索引。 此参数是 PO_FX_COMPONENT_PERF_INFO 结构中 PerfStateSets 数组的索引,设备驱动程序用于向 PoFx 注册组件性能状态。 如果 PerfStateSets 数组包含 N 个元素,则性能状态集索引范围为 0 到 N–1。
[in] CurrentPerf
指向返回指定性能状态集的当前性能状态的变量的指针。 有关返回的值的详细信息,请参阅“备注”。
返回值
如果请求的作成功,PoFxQueryCurrentComponentPerfState 将返回STATUS_SUCCESS。 可能的错误返回值包括以下状态代码。
| 返回代码 | Description |
|---|---|
|
调用方为组件或组件状态集提供了无效索引。 |
注解
驱动程序可以调用 PoFxQueryCurrentComponentPerfState 例程来检索组件的给定性能状态集的当前性能状态。 如果调用成功,则使用指向指定集当前性能状态的值的指针覆盖 CurrentPerf 参数。 此值可以是下列值之一,具体取决于驱动程序传递给 PoFxRegisterComponentPerfStates 例程的PO_FX_COMPONENT_PERF_SET结构的内容:
- 对于表示持续分布性能状态的性能状态集,这是PO_FX_COMPONENT_PERF_SET结构的最小值和最大值成员之间的值。
- 对于表示离散数量的性能状态的性能状态集,此值是PO_FX_COMPONENT_PERF_SET结构成员国的索引。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | 从 Windows 10 开始可用。 |
| 目标平台 | 普遍 |
| Header | wdm.h |
| Library | Ntoskrnl.lib |
| DLL | Ntoskrnl.exe |
| IRQL | <= DISPATCH_LEVEL |