Powercfg

Batch file{{-}}Windows Command Prompt }} 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.

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, 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.

/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.

CREATES a power scheme with the specified scheme_name.

/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.

/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.

/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 is omitted, then a new GUID will be created for the duplicated scheme.

/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.

/deletesetting Sub_GUID Setting_GUID

Deletes a power setting.

Value

Description

Sub_GUID

Specifies the subgroup GUID.

Setting_GUID

Specifies the power setting GUID.

/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.

/getactivescheme

Retrieves the currently active power scheme.

/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 GUIDs

/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.

/h[ibernate] [on|off]

Enables or disables the hibernate feature. Hibernate timeout is not supported on all computers.

/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

/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.

/b[atteryalarm] [low|critical] [settings]

Configure the battery alarm.
Settings:

/activate [on|off]

Enable or disable the alarm.

/level [percentage (0100)]

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.

/a[vailablesleepstates]

Reports the sleep states available on the computer. Attempts to report reasons why sleep states are unavailable.

/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.

/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.

/devicedisablewake

Disables the device from waking the computer from a sleep state.

devicename

Specifies a device retrieved by using the powercfg /devicequery wake_armed command.

/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

/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.

/lastwake

Reports information about the event that woke the computer from the last sleep transition.

/aliases

Displays all aliases and their corresponding GUIDs. The user may use these aliases in place of any GUID at the command prompt

/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.

/getsecuritydescriptor [GUID|]

Gets a security descriptor associated with a specified power setting, power scheme, or action.

GUID

Specifies a power scheme or a power setting GUID.

Specifies one of the following strings: ActionSetActive, ActionCreate, ActionDefault

/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.

/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.

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.

/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

Specifies the number of seconds to observe system behavior. Default is 60 seconds

Enumerates the active wake timers. If enabled, the expiration of a wake timer wakes the system from sleep and hibernate states.

Displays Help at the command prompt.

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

  • List of Control Panel applets (Windows)#Standard applets