有兩種方式 首先開啟[MFC類別精靈]

第一種新增虛擬函式 virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);

LRESULT CTestPowerDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
  if (message == WM_POWERBROADCAST)
 {
    if (wParam== PBT_APMSUSPEND)//休眠
      AfxMessageBox(L"System is suspending operation.");

  }
  return CDialogEx::WindowProc(message, wParam, lParam);
}

 

第二種新增訊息 afx_msg UINT OnPowerBroadcast(UINT nPowerEvent, UINT nEventData);

BEGIN_MESSAGE_MAP(CTestPowerDlg, CDialogEx)
 ON_WM_POWERBROADCAST()
END_MESSAGE_MAP()

 

UINT CTestPowerDlg::OnPowerBroadcast(UINT nPowerEvent, UINT nEventData)
{
  if (nPowerEvent == PBT_APMSUSPEND)//休眠
    AfxMessageBox(L"System is suspending operation.");

  return CDialogEx::OnPowerBroadcast(nPowerEvent, nEventData);
}

 

其他訊息類別請參考 MSDN官網

假設不是視窗程式請參考 這裡 & 這裡

arrow
arrow
    全站熱搜

    Penny 發表在 痞客邦 留言(1) 人氣()