当表单失去焦点时处理睡眠

时间:2010-09-20 11:59:31

标签: windows visual-c++ forms focus sleep

在为GUI编写带有Windows窗体的服务器应用程序时出现问题。当表单失去焦点时,进程会休眠,因此除非表单始终处于焦点状态,否则任何网络都无法正常工作。有没有办法创建一个对话框或窗口来保持其进程连续运行?

我调用了一个名为cServer :: GetInstance()的函数 - > CheckEvents();检查连接的事件以查看是否有任何特殊情况发生,问题是,当表单失去焦点时,这个和端口上监听的一般过程会停止。有没有修复或解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果你必须使用win32 gui应用程序,你的网络代码应该在一个独立的专用线程中。

更好的解决方案是将“服务器”作为Windows服务,将GUI作为服务器的客户端应用程序。