PowerCFG (executable name powercfg.exe
) is a command-line utility that is used from an elevated Windows Command Prompt to control all configurable power system settings, including hardware-specific configurations that are not configurable through the Control Panel, on a per-user basis. It was first introduced by Microsoft in Windows XP SP2 in 2003.[1][2]
Usage
Powercfg must be run from an elevated command prompt, and, under Windows XP, it requires workstation Administrator or power user rights. Power Schemes are configured on a per-user basis. The most common cause of problems with power saving and hibernation on Windows systems is an incompatible device driver. This can be diagnosed by disabling each device in turn (with powercfg /devicedisablewake
). When activating power saving across a local area network, it is important to ensure that software updates, security patches and antivirus updates in particular, are not disrupted. Microsoft recommends to configure its Windows Server Update Services to install updates when workstations are available and Windows Task Scheduler can be set to wake the machine when needed.
Syntax
XP |
POWERCFG [/LIST | /QUERY [name] | /CREATE name | /DELETE name | /SETACTIVE name | /CHANGE name settings | /HIBERNATE {ON|OFF} | /NUMERICAL int | /EXPORT name [/FILE filename] | /IMPORT name [/FILE filename] | /GLOBALPOWERFLAG {ON|OFF} /OPTION flag | /BATTERYALARM {LOW|CRITICAL} [settings] | /DEVICEQUERY flagquery | /DEVICEENABLEWAKE devicename | /DEVICEDISABLEWAKE devicename | /?] |
Vista, Server 2008, 7 |
powercfg [/l[ist]] [/q[uery] [Scheme_GUID] [Sub_GUID]] ] [/x setting value] [/changename GUID name [scheme_description]] [/duplicatescheme GUID [DestinationGUID]] [/d[elete] GUID] [/deletesetting Sub_GUID Setting_GUID] [/s[etactive] Scheme_GUID] [/getactivescheme] [/setacvalueindex Scheme_GUID Sub_GUID Setting_GUID SettingIndex] [/setdcvalueindex Scheme_GUID Sub_GUID Setting_GUID SettingIndex] [/h[ibernate] [on|off]] [/a[vailablesleepstates]] [/devicequery query_flags] [/deviceenablewake devicename] [/devicedisablewake devicename] [/import filename [GUID]] [/export filename [GUID]] [/lastwake] [/aliases] [/setsecuritydescriptor [GUID|Action] SDDL] [/getsecuritydescriptor [GUID|Action]] [/requests] [/requestsoverride Caller_type Name Request] [/energy [/output filename] [/xml] [/duration seconds] [/trace [/d filepath]] [/waketimers] [/?] |
Parameters
Parameter |
Description |
XP |
Other OSs |
/l[ist] |
Lists all power schemes in the current user's environment. |
Yes |
Yes |
/q[uery] [scheme_name] (XP)
/q[uery] [Scheme_GUID] [Sub_GUID] |
Displays the contents of the specified power scheme.
scheme_name
SCHEME_GUID |
(Optional) Specifies the scheme_name /GUID of the power scheme to display. GUID can be obtained by using the powercfg /l command. |
SUB_GUID |
(Optional) Specifies the GUID of the subgroup to display. Requires a SCHEME_GUID to be provided.
If neither SCHEME_GUID or SUB_GUID are provided, the settings of the current user's active power scheme are displayed.
If SUB_GUID is not specified, all settings in the specified power scheme are displayed. |
|
Yes |
Yes |
/c[reate] scheme_name |
Creates a power scheme with the specified scheme_name . |
Yes |
No |
/change setting value
/x setting value |
Modifies a setting value in the current power scheme.
setting |
Specifies one of the following settings:
///monitor-timeout-ac minutes
//monitor-timeout-dc minutes
//disk-timeout-ac minutes
//disk-timeout-dc minutes
//standby-timeout-ac minutes
//standby-timeout-dc minutes
//hibernate-timeout-ac minutes
//hibernate-timeout-dc minutes
/processor-throttle-ac throttle
/processor-throttle-dc throttle
|
value |
Specifies the value in minutes. |
- AC settings are used when the system is on AC power. DC settings on battery power.
- Setting any value to 0 will set the
timeout=Never
throttle = NONE , CONSTANT , DEGRADE , or ADAPTIVE .
|
|
Yes |
Yes |
/changename GUID PowerSchemeName [scheme_description] |
Modifies the name of a power scheme and, optionally, the scheme description.
Value |
Description |
GUID |
Specifies the GUID of the power scheme |
name |
Specifies the name of the power scheme. |
scheme_description |
Describes the power scheme. |
If the description is omitted, then only the name will be changed. |
|
No |
Yes |
/duplicatescheme GUID [DestinationGUID] |
Duplicates the specified power scheme. The resulting GUID which represents the new scheme will be displayed.
Value |
Description |
GUID |
Specifies a scheme GUID . Obtained by using the powercfg /l command. |
DestinationGUID |
Specifies the GUID where the scheme will be copied. |
If <DestinationGUID> is omitted, then a new GUID will be created for the duplicated scheme. |
|
No |
Yes |
/d[elete] scheme_name
/d[elete] GUID |
Deletes the power scheme with the specified GUID.
scheme_name
GUID |
Specifies the scheme_name /GUID of the scheme. GUID can be obtained by using the powercfg /l command. |
|
Yes |
Yes |
/deletesetting Sub_GUID Setting_GUID |
Deletes a power setting.
Value |
Description |
Sub_GUID |
Specifies the subgroup GUID . |
Setting_GUID |
Specifies the power setting GUID . |
|
No |
Yes |
/s[etactive] scheme_name
-s[etactive] Scheme_GUID |
Makes the specified power scheme active on the computer.
scheme_name
Scheme_GUID |
Specifies the scheme GUID . |
|
Yes |
Yes |
/getactivescheme |
Retrieves the currently active power scheme. |
No |
Yes |
/setacvalueindex Scheme_GUID Sub_GUID Setting_GUID SettingIndex |
Sets a value associated with a specified power setting while the computer is powered by AC power.
Value |
Description |
Scheme_GUID |
Specifies a power scheme GUID. Obtained by using the powercfg /l command. |
Sub_GUID |
Specifies a subgroup of power setting GUID. Obtained by using the powercfg /q command. |
Setting_GUID |
Specifies an individual power setting GUID. Obtained by using the powercfg /q command. |
SettingIndex' |
Specifies which of the list of possible values this power setting will be set to. |
Use the /l and /q options to discover the GUID s |
|
No |
Yes |
/setdcvalueindex Scheme_GUID Sub_GUID Setting_GUID SettingIndex |
Sets a value associated with a specified power setting while the computer is powered by DC power.
Value |
Description |
Scheme_GUID |
Specifies a power scheme GUID. Obtained by using the powercfg /l command. |
Sub_GUID |
Specifies a subgroup of power setting GUID . Obtained by using the powercfg /q command. |
Setting_GUID |
Specifies an individual power settingGUID . Obtained by using the powercfg /q command. |
SettingIndex |
Specifies which of the list of possible values this power setting will be set to. |
|
No |
Yes |
/h[ibernate] [on|off] |
Enables or disables the hibernate feature. Hibernate timeout is not supported on all computers. |
Yes |
Yes |
/n[umerical] |
Specify the power scheme to be operated upon with a numerical identifier.
This switch allows a number to be used in place of the scheme_name in the following commands: /QUERY , /DELETE , /SETACTIVE , /CHANGE , /EXPORT , and /IMPORT |
Yes |
No |
/g[lobalpowerflag] [on|off]] |
Turn one of the following global power flags on or off:
BatteryIcon |
Turn the battery meter icon in the system tray on/off. |
MultiBattery |
Turns on/off multiple battery display in system Power Meter. |
ResumePassword |
Prompt for password on resuming the system. |
WakeOnRing |
Turn on/off wake on ring support. |
VideoDim |
Turn on/off support for dimming video display on battery power. |
|
Yes |
No |
/b[atteryalarm] [low|critical] [settings] |
Configure the battery alarm.
Settings:
/activate [on|off] |
Enable or disable the alarm. |
/level [percentage (0 – 100)] |
The alarm will be activated when the power level reaches this percentage. |
/text [on|off] |
Turns the text notification on or off. |
/sound [on|off] |
Turns the audible notification on or off. |
/action [none|shutdown|hibernate|standby] |
Specifies the action to take when this alarm goes off. Not all actions are always available. |
/forceaction [on|off] |
Force stand by or shutdown even if a program stops responding. |
/program [on|off] |
Specifies a program to run. schtasks.exe /change may be used to configure the program. |
|
Yes |
No |
/a[vailablesleepstates] |
Reports the sleep states available on the computer. Attempts to report reasons why sleep states are unavailable. |
Yes |
Yes |
/devicequery [query_flags]] |
Returns a list of devices that meet the specified flags:
wake_from_S1_supported |
Returns all devices that support waking the computer from a light sleep state. |
wake_from_S2_supported |
Returns all devices that support waking the computer from a deeper sleep state. |
wake_from_S3_supported |
Returns all devices that support waking the computer from the deepest sleep state. |
wake_from_any |
Returns all devices that support waking the computer from any sleep state. |
S1_supported |
Lists devices supporting light sleep. |
S2_supported |
Lists devices supporting deeper sleep. |
S3_supported |
Lists devices supporting deepest sleep. |
S4_supported |
Lists devices supporting hibernation. |
wake_programmable |
Lists devices that are user/configurable to wake the computer from a sleep state. |
wake_armed |
Lists devices that are currently configured to wake the computer from any sleep state. |
all_devices |
Returns all devices present in the computer. |
all_devices_verbose |
Returns a verbose list of devices. |
|
Yes |
Yes |
/deviceenablewake devicename |
Enables the device to wake the computer from a sleep state.
devicename |
Specifies a device retrieved by using the powercfg /devicequery wake_programmable command. |
|
Yes |
Yes |
/devicedisablewake <devicename> |
Disables the device from waking the computer from a sleep state.
devicename |
Specifies a device retrieved by using the powercfg /devicequery wake_armed command. |
|
Yes |
Yes |
/import scheme_name [/FILE filename]
-import filename [GUID] |
Imports all power settings from the specified file.
filename |
Specifies a fully qualified path to a file generated by using the powercfg /export command-line option. |
GUID |
(optional) Represents the settings loaded into a power scheme. If not supplied, Powercfg will generate and use a new GUID |
|
Yes |
Yes |
/export scheme_name [/FILE filename]
-export filename [GUID] |
Exports a power scheme, represented by the specified GUID, to the specified file.
filename |
Specifies a fully qualified path to a destination file. |
GUID |
Specifies a power scheme GUID. Obtained by using the /l command-line option. |
|
Yes |
Yes |
/lastwake |
Reports information about the event that woke the computer from the last sleep transition. |
No |
Yes |
/aliases |
Displays all aliases and their corresponding GUIDs. The user may use these aliases in place of any GUID at the command prompt |
No |
Yes |
/setsecruitydescriptor [GUID|Action] SDDL |
Sets a security descriptor associated with a specified power setting, power scheme, or action.
GUID |
Specifies a power scheme or a power setting GUID. |
Action |
Specifies one of the following strings: ActionSetActive , ActionCreate , ActionDefault |
SDDL |
Specifies a valid security descriptor string in SDD format. Use powercfg /getsecuritydescriptor to see an example SDDL STRING. |
|
No |
Yes |
/getsecuritydescriptor [GUID|<Action>] |
Gets a security descriptor associated with a specified power setting, power scheme, or action.
GUID |
Specifies a power scheme or a power setting GUID. |
<Action> |
Specifies one of the following strings: ActionSetActive , ActionCreate , ActionDefault |
|
No |
Yes |
/requests |
Enumerate application and driver Power Requests. Power requests prevent the computer from automatically powering off the display or entering a low-power sleep mode. |
No |
Yes |
/requestsoverride Caller_type Name Request |
Sets a Power Request override for a particular Process, Service, or Driver. If no parameters are specified, this command displays the current list of Power Request Overrides. NOTE: No documentation exists to remove a request override entry once entered, however leaving off the request type will do so. powercfg -requestsoverride Caller_type Name (Request left blank to remove entry)
Value |
Description |
Caller_type |
Specifies one of the following caller types: PROCESS, SERVICE, DRIVER. This is obtained by calling the powercfg /requests command. |
Name |
Specifies the caller name. This is the name returned from calling powercfg /requests command. |
Request |
Specifies one or more of the following Power Request Types: Display , System , Awaymode *Leave blank to remove an entry. |
|
No |
Yes |
/energy |
Analyzes the system for common energy-efficiency and battery life problems. The /energy command should be used when the computer is idle and with no open programs or documents. The /energy command will generate an HTML report file in the current path. Windows7 only.
Value |
Description |
/output filename |
Specifies the path and filename to store the energy report HTML file (default="energy-report.html"). |
/xml |
Formats the report file as XML. |
/trace |
Records system behavior and does not perform analysis. Trace files will be generated in the current path unless the /d parameter is specified. |
/d filepath |
Specifies the directory to store trace data. May only be used with the /trace parameter. |
/duration <seconds> |
Specifies the number of seconds to observe system behavior. Default is 60 seconds |
|
No |
7 only |
/waketimers |
Enumerates the active wake timers. If enabled, the expiration of a wake timer wakes the system from sleep and hibernate states. |
No |
Yes |
/help
/? |
Displays Help at the command prompt. |
Yes |
Yes |
- Power scheme GUIDs
The use of GUIDs avoids any problems with internationalisation when applying Power Saving to non-English versions of Windows. The three built-in power schemes have the GUIDs listed below:
SCHEME_MAX
= Power saver (Max power saving)
SCHEME_BALANCED
= Balanced (Typical)
SCHEME_MIN
= High performance (Min power saving)
Examples
Lists all power schemes
powercfg /l
List all Aliases
powercfg -aliases
Retrieve the currently active power scheme
powercfg -getactivescheme
Set the Monitor and disc timeouts for the current Power saver scheme
powercfg -Change -monitor-timeout-ac 20
powercfg -Change -disk-timeout-ac 30
Enable the mouse to wake from sleep
powercfg -deviceEnableWake "Microsoft USB IntelliMouse Explorer"
Set the 'Power saver' scheme
powercfg -SETACTIVE SCHEME_MAX
Create a Custom Power scheme and set it as active
Set _Custom_Power=B1234567-SS64-SS64-SS64-F00000111AAA
powercfg -DUPLICATESCHEME SCHEME_MAX %_Custom_Power%
powercfg -CHANGENAME %_Custom_Power% "SS64 Power Scheme "
powercfg -SETACTIVE %_Custom_Power%
Disable the sleep button (for the users current power scheme)
For /f "tokens=2 delims=:(" %%G in ('powercfg -getActiveScheme') do (
powercfg -setAcValueIndex %%G sub_buttons sButtonAction 0
powercfg -setActive %%G
)
Disable the sleep button (for all available power schemes)
For /f "skip=2 tokens=2,4 delims=:()" %%G in ('powercfg -list') do (
powercfg -setAcValueIndex %%G sub_buttons sButtonAction 0
if "%%H" == " *" powercfg -setActive %%G
)
See also
References
<templatestyles src="Reflist/styles.css" />
Cite error: Invalid <references>
tag; parameter "group" is allowed only.
Use <references />
, or <references group="..." />
External links
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
|
|
File system navigation |
|
File management |
|
Disk management |
|
Processes |
|
Registry |
|
User environment |
|
File contents |
|
Scripting |
|
Networking |
|
Maintenance and care |
|
Boot management |
|
Software development |
|
Miscellaneous |
|
|
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.