powerEnumerate 函数 (powrprof.h)

枚举电源方案中的指定元素。 此函数通常在循环中调用,递增 Index 参数以检索子项,直到它们全部枚举。

语法

DWORD PowerEnumerate(
  [in, optional]  HKEY                RootPowerKey,
  [in, optional]  const GUID          *SchemeGuid,
  [in, optional]  const GUID          *SubGroupOfPowerSettingsGuid,
  [in]            POWER_DATA_ACCESSOR AccessFlags,
  [in]            ULONG               Index,
  [out, optional] UCHAR               *Buffer,
  [in, out]       DWORD               *BufferSize
);

参数

[in, optional] RootPowerKey

此参数保留供将来使用,必须设置为 NULL

[in, optional] SchemeGuid

电源方案的标识符。 如果此参数为 NULL,则返回电源策略的枚举。

[in, optional] SubGroupOfPowerSettingsGuid

电源设置的子组。 如果此参数为 NULL,则返回 PolicyGuid 键下的设置枚举。

含义
NO_SUBGROUP_GUID
fea3413e-7e05-4911-9a71-700331f1c294
此子组中的设置将是默认电源方案的一部分。
GUID_DISK_SUBGROUP
0012ee47-9041-4b5d-9b77-535fba8b1442
此子组中的设置控制系统硬盘驱动器的电源管理配置。
GUID_SYSTEM_BUTTON_SUBGROUP
4f971e89-eebd-4455-a8de-9e59040e7347
此子组中的系统电源按钮控制配置中的设置。
GUID_PROCESSOR_SETTINGS_SUBGROUP
54533251-82be-4824-96c1-47b60b740d00
此子组中的设置控制处理器电源管理功能的配置。
GUID_VIDEO_SUBGROUP
7516b95f-f776-4464-8c53-06167f40cc99
此子组中的设置控制视频电源管理功能的配置。
GUID_BATTERY_SUBGROUP
e73a048d-bf27-4f12-9731-8b2076e8891f
此子组中的设置控制电池警报跳闸点和操作。
GUID_SLEEP_SUBGROUP
238C9FA8-0AAD-41ED-83F4-97BE242C8F20
此子组控制系统睡眠设置中的设置。
GUID_PCIEXPRESS_SETTINGS_SUBGROUP
501a4d13-42af-4429-9fd1-a8218c268e20
此子组中的设置控制 PCI Express 设置。

[in] AccessFlags

一组指定将枚举的标志

含义
ACCESS_SCHEME
16
枚举电源方案。 将忽略 SchemeGuidSubgroupOfPowerSettingsGuid 参数。
ACCESS_SUBGROUP
17
枚举 SchemeGuid 下的子组。 将忽略 SubgroupOfPowerSettingsGuid 参数。
ACCESS_INDIVIDUAL_SETTING
18
枚举 SchemeGuid\SubgroupOfPowerSettingsGuid 下的各个电源设置。 若要直接在 SchemeGuid 键下枚举电源设置,请使用 NO_SUBGROUP_GUID 作为 SubgroupOfPowerSettingsGuid 参数。

[in] Index

要枚举的方案、子组或设置的从零开始的索引。

[out, optional] Buffer

指向用于接收元素的变量的指针。 如果此参数为 NULL,则该函数将检索所需缓冲区的大小。

[in, out] BufferSize

指向变量的指针,该变量在输入时包含 Buffer 参数指向的 缓冲区 的大小。 如果 Buffer 参数为 NULLBufferSize 不够大,则该函数将返回 ERROR_MORE_DATA 且变量接收所需的缓冲区大小。

返回值

如果调用成功,则返回 ERROR_SUCCESS (零) ;如果调用失败,则返回非零值。 如果 BufferSize 参数中传递的缓冲区大小太小,或者 Buffer 参数为 NULL,则将返回ERROR_MORE_DATA,并且 BufferSize 参数指向的 DWORD 将填充所需的缓冲区大小。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 powrprof.h
Library PowrProf.lib
DLL PowrProf.dll

另请参阅

POWER_DATA_ACCESSOR

电源管理功能