Answer

专注于Mobile,WinCE
  首页  :: 新随笔  :: 联系 :: 管理

[转]WM/WINCE代码研读系列之 Power Management(2)

Posted on 2011-02-16 16:56  answer  阅读(469)  评论(0编辑  收藏  举报

系统电源状态变迁示意图

WM/WINCE 电源管理状态图

 

1. Backlightoff Timeout

2. User Activity or AppButtonPressed

3. UserIdle Timeout

4. User Activity or AppButtonPressed

5. PowerButtonPressed or Suspend Timeout

6. PowerButtonPressed or AppButtonPressed

7. UserIdle Timeout

8. PowerButtonPressed or Suspend Timeout

9. PowerButtonPressed or Suspend Timeout

10. UnattendedRefCount == 0 or SuspendTimeout

11. Wakeup from Suspended status

12. ResumingSuspendTimeout

13. PowerButtonPressed or AppButtonPressed

14. Suspend Timeout

15. PowerButtonPressed or AppButtonPressed

 

SetSystemPowerState()

16. SetSystemPowerState(NULL,POWER_STATE_ON,POWER_FORCE) or SetSystemPowerState(L"on",0,0);

17. SetSystemPowerState(NULL,POWER_STATE_USERIDLE,POWER_FORCE) or SetSystemPowerState(L"useridle",0,0);

18. SetSystemPowerState (NULL,POWER_STATE_RESET,POWER_FORCE) or SetSystemPowerState(L"reboot",0,0);

19. SetSystemPowerState (NULL,POWER_STATE_SUSPEND,POWER_FORCE) or SetSystemPowerState(NULL,POWER_STATE_OFF,POWER_FORCE) or SetSystemPowerState(NULL,POWER_STATE_CRITICAL,POWER_FORCE) or SetSystemPowerState(L"suspend",0,0);

20. SetSystemPowerState(NULL,POWER_STATE_IDLE,POWER_FORCE) or SetSystemPowerState(L"screenoff",0,0);

21. SetSystemPowerState(L"coldreboot",POWER_STATE_RESET,POWER_FORCE)

注意:

1.Windows Mobile 6 Professional和Windows Mobile 6 Classic(即PocketPC)下,没有UserIdle状态,3,4,7,8,9,17这几个迁移线也就不存在。

2.Windows Mobile 6 Standard(即SmartPhone)下,没有Unattended,Resuming,Suspended三个状态,5,6,8,9,10,11,12,13,14这几个迁移线也不存在。