Visual c++ 如何检测MFC应用程序是否没有响应?

Visual c++ 如何检测MFC应用程序是否没有响应?,visual-c++,mfc,Visual C++,Mfc,如何检测MFC应用程序是否没有响应 同一个应用程序可以启动一个单独的线程,或者其他一些应用程序可以运行自己的线程并定期调用SendMessageTimeout()将WM_NULL消息发送给相关应用程序。如果超时,这意味着应用程序不负责任。如果你问如何从流程本身内部完成,你不能,这是一个悖论。被阻止的进程无法检测它是否没有响应。这就像有人醒来问自己是否在睡觉 基于这一点和你的,我猜你有一个长期运行的操作,你希望用户等待,直到它完成。如果他们在你的窗口完成之前点击了它,他们会得到“没有响应”,并且可

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

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

如果你问如何从流程本身内部完成,你不能,这是一个悖论。被阻止的进程无法检测它是否没有响应。这就像有人醒来问自己是否在睡觉

基于这一点和你的,我猜你有一个长期运行的操作,你希望用户等待,直到它完成。如果他们在你的窗口完成之前点击了它,他们会得到“没有响应”,并且可能会过早终止应用程序

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