捕获windows系统的sleep或hibernate状态

通过捕获WM_POWERBROADCAST消息无法区分出系统是进去了sleep状态还是hibernate状态。

在进入这两个状态时,系统会发出PBT_APMSUSPEND。如何从sleep或hibernate状态中恢复过来,系统会先发出PBT_APMRESUMESUSPEND, 然后发出PBT_APMRESUMEAUTOMATIC。

在内核态,通过SYSTEM_POWER_STATE标识系统有哪些状态。

https://msdn.microsoft.com/en-us/library/windows/desktop/aa373248(v=vs.85).aspx

https://stackoverflow.com/questions/11944335/is-windows-entering-sleep-mode-or-hibernating-with-c

https://msdn.microsoft.com/en-us/library/windows/desktop/aa373229(v=vs.85).aspx

https://msdn.microsoft.com/en-us/library/windows/desktop/aa373227(v=vs.85).aspx

原文地址:https://www.cnblogs.com/cg88/p/9149978.html