在做一個板卡的檢查程序時候,使用公司提供的驅動包來Enable板卡中斷,產生的中斷以Message方式發送,但是用戶窗口不能及時獲取到Message。這時候需要系統停下當前工作,去消息隊列上面Peek一下Message,代碼如下:
- MSG msg;
- while (PeekMessage(&msg, m_hWnd, 0, 0, PM_REMOVE))
- {
- if (msg.message == WM_QUIT)
- {
- break;
- }
- else
- {
- TranslateMessage(&msg);
- DispatchMessage(&msg);
- }
- }
msg表示接受到的消息。
m_hWnd爲窗口句柄。
PM_REMOVE表示處理完消息移除。