1. 程式人生 > >使用PeekMessage獲取訊息佇列上訊息

使用PeekMessage獲取訊息佇列上訊息

在做一個板卡的檢查程式時候,使用公司提供的驅動包來Enable板卡中斷,產生的中斷以Message方式傳送,但是使用者視窗不能及時獲取到Message。這時候需要系統停下當前工作,去訊息佇列上面Peek一下Message,程式碼如下:

  1.  MSG  msg;
  2. while (PeekMessage(&msg, m_hWnd, 0, 0, PM_REMOVE))
  3.  {
  4. if (msg.message == WM_QUIT)
  5.       {
  6. break;
  7.       }
  8. else
  9.       {
  10.            TranslateMessage(&msg);
  11.            DispatchMessage(&msg);
  12.       }
  13.  }

msg表示接受到的訊息。
m_hWnd為視窗控制代碼。
PM_REMOVE表示處理完訊息移除。