Share via


Power Manager Suspend Time-outs (Windows CE 5.0)

Send Feedback

The sample Power Manager implementation maintains a development workstation based on the system power source, user activity, and system activity. The sample Power Manager implements configurable time-outs for transitioning between OS power states. Because the Power Manager is designed to be customized by the OEM, the following description may not apply to all Windows CE-based devices. OEMs control how and when the Power Manager decides to change system power states.

The following list shows the registry values that control system power state transitions for the sample Power Manager:

  • ACUserIdle
  • ACSystemIdle
  • ACSuspend
  • BattUserIdle
  • BattSystemIdle
  • BattSuspend
  • BatteryPoll

These DWORD values are stored in the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\Timeouts registry key. A value of 0 indicates that no time-out will occur. The sample implementation does not provide a method for bypassing OS power states; however, OEMs may choose to do so.

For the Power Manager to actively manage system power states, these settings need to be present in the registry. The actual decision to manage system power is based on the presence of ACUserIdle.

Note   To prevent conflicts between GWES and the Power Manager, you need to disable GWES power management as described previously. When the Power Manager is actively managing system power, it may restrict applications from entering arbitrary system power states.

You can reset the system state transition timers by creating a named auto-reset event called _T("PowerManager/ReloadActivityTimeouts") and calling SetEvent on the handle of that event. This informs the Power Manager to read transition timer settings again from the Timeouts registry key.

Registry Settings

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\Timeouts]
    "ACUserIdle"=dword:3c; in seconds
    "ACSystemIdle"=dword:12c; in seconds
    "ACSuspend"=dword:0; in seconds
    "BattUserIdle"=dword:3c; in seconds
    "BattSystemIdle"=dword:b4; in seconds
    "BattSuspend"=dword:12c; in seconds
    "BatteryPoll"=dword:1f4; battery polling interval, in milliseonds

See Also

Suspend Time-out Support | SetEvent

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.