使用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表示处理完消息移除。

猜你喜欢

转载自blog.csdn.net/mantian/article/details/3156843
今日推荐