我有一个 ATL 应用程序,我想在其中处理WM_POWERBROADCAST。我有一个 CMainDlg (CAxDialogImpl),我在其 MSG_MAP 中定义了处理程序。
BEGIN_MSG_MAP(CMainDlg)
...
MESSAGE_HANDLER(WM_POWERBROADCAST, OnPowerChange)
...
END_MSG_MAP()
但是,当我做一些应该调用它的事情时,不会调用处理程序,例如更改电源设置或让机器进入睡眠状态。
关于可能发生的事情以及如何解决这个问题的任何想法?出于某种原因,CMainDlg 是否没有收到电源事件的通知?