dwRet = WaitForSingleObject( m_h_accept_event, 10000 );本身,就会导致界面等待m_h_accept_event 10秒钟,界面就会停止响应10秒,知道超时或者对象m_h_accept_event释放换种方式吧,例如到线程中去Wait

解决方案 »

  1.   

    我觉得如果你要 waitforobject...还不如先 showwindow(SW_HIDE)呢
      

  2.   

    如果你在消息响应函数中,调用了WaitForSingleObject类似的函数,都会让消息阻塞掉的,因为这些消息都是要处理完成才返回,如果你WaitForSingleObject了,就会把消息循环阻塞掉了
      

  3.   

    DWORD fkWaitForSingleObject(HANDLE hHandle, DWORD dwMilliseconds ){DWORDdwTimeBeg = GetTickCount();while (GetTickCount() - dwTimeBeg <= dwMilliseconds){MSG msg = {0};DWORD dwRet = MsgWaitForMultipleObjects(1, &hHandle, TRUE, dwMilliseconds, QS_ALLINPUT);if (dwRet == WAIT_OBJECT_0){returnWAIT_OBJECT_0;}else{if(::PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)){PeekMessage(&msg, NULL, 0, 0, PM_REMOVE);DispatchMessage(&msg);if (msg.message == WM_CLOSE)return0;}}}returnWAIT_TIMEOUT;}来自:http://weibo.com/p/1001603720721380589753