PBT_APMPOWERSTATUSCHANGE 事件

通知应用程序计算机电源状态的更改,例如从电池电源切换到 A/C。 当剩余电池电量低于用户指定的阈值或电池电量按指定百分比变化时,系统也会广播此事件。

窗口会通过 WM_POWERBROADCAST 消息接收此事件。 按如下所述设置了 wParam 和 lParam 参数。

LRESULT 
CALLBACK 
WindowProc( HWND hwnd,      // handle to window
            UINT uMsg,      // WM_POWERBROADCAST
            WPARAM wParam,  // PBT_APMPOWERSTATUSCHANGE
            LPARAM lParam); // zero

参数

hwnd

窗口的句柄。

uMsg

含义
WM_POWERBROADCAST
536 (0x218)
消息标识符。

wParam

含义
PBT_APMPOWERSTATUSCHANGE
10 (0xA)
事件标识符。

lParam

保留;必须为零。

返回值

无返回值。

注解

应用程序应通过调用 GetSystemPowerStatus 函数来检索计算机的当前电源状态来处理此事件。 具体而言,应用程序应检查 SYSTEM_POWER_STATUS 结构的 ACLineStatus、BatteryFlag、BatteryLifeTime 和 BatteryLifePercent 成员是否有任何更改。 当电池使用时间下降到小于 5 分钟时,或者电池使用时间的百分比下降到 10% 以下或电池使用时间变化 3% 时,可能会出现此事件。

要求

要求
最低受支持的客户端
Windows XP [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
Header
WinUser.h(包括 Windows.h)

另请参阅