PeekMessage抓取消息,如何把每个消息都获取到呢?

有一个看似简单的问题:

 1     while(1)
 2     {
 3         while(::PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
 4         {
 5             if (WM_QUIT == msg.message)
 6             {
 7                 goto _quit;
 8             }
 9 
10             ::TranslateMessage(&msg);
11             ::DispatchMessage(&msg);
12         }
13         if(g_bActive)
14         {
15             UiMain();
16         }17     }

插拔SD卡,会产生消息WM_DEVICECHANGE,但是上面的组合是获取不到的,为什么呢?在不用GetMessage的情况下如何使上面的组合能获取到消息WM_DEVICECHANGE呢?

 

/////////////////////////////////2013/5/12//////////////////

不是获取不到,而是系统根本没发此消息上来;

注意检测SD卡中断IST的线程优先级。

posted on 2013-04-26 11:18  EmbeddedBoy_jsu_xtw  阅读(682)  评论(0编辑  收藏  举报

导航