如何检测您的MFC应用程序是否没有响应?

时间:2009-06-09 08:53:52

标签: visual-c++ mfc

如何检测您的MFC应用程序是否没有响应?

2 个答案:

答案 0 :(得分:2)

同一个应用程序可以启动一个单独的线程,或者某个其他应用程序可以运行自己的线程,并定期调用SendMessageTimeout()将WM_NULL消息发送给相关应用程序。如果它超时则意味着应用程序没有响应。

答案 1 :(得分:0)

如果你问的是如何在过程中做到这一点,你就不能,这是一个悖论。被阻止的进程无法检测它是否没有响应。这就像是有人醒来时问自己是否在睡觉。

基于此和你的other question,我猜你有一个长时间运行的操作,你希望用户等到它完成。如果他们在完成之前点击你的窗口,他们就会“没有回复”,并且可能会过早终止你的申请。

您需要在单独的线程上执行长时间运行的操作。这是一个很好的起点:CodeProject article