在做一个板卡的检查程序时候,使用公司提供的驱动包来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表示处理完消息移除。