WM_POWERBROADCAST消息
每当发生电源管理事件时,系统都会向所有应用程序和可安装的驱动程序广播消息。 系统通过 WM_POWERBROADCAST 消息广播这些事件,并将 wParam 参数设置为相应的电源管理事件。 例如, PBT_APMPOWERSTATUSCHANGE 事件指示系统电源状态更改。 必须确保应用程序正确响应 WM_POWERBROADCAST 消息。
在暂停操作之前,系统会立即广播 PBT_APMSUSPEND 事件。 这为应用程序和驱动程序提供了最后一次准备事件的机会。 在许多情况下,系统会在不请求执行此操作的权限的情况下广播这些消息。 例如,如果应用程序使用 SetSuspendState 函数强制挂起,则会发生这种情况。
还原系统操作后,系统会广播 PBT_APMRESUMESUSPEND 或 PBT_APMRESUMECRITICAL 事件。 如果应用程序在计算机挂起之前收到了 PBT_APMSUSPEND 事件,它将接收PBT_APMRESUMESUSPEND事件。 否则,它将接收 PBT_APMRESUMECRITICAL 事件。
系统将 PBT_POWERSETTINGCHANGE 事件发送到使用 RegisterPowerSettingNotification 为特定事件注册的应用程序。 有关详细信息,请参阅 注册 Power Events。
相关主题