如何以编程方式检测Windows中的应用程序是否已崩溃?

y53ybaqx  于 2023-03-13  发布在  Windows
关注(0)|答案(2)|浏览(310)

我正在运行一个Python脚本来启动许多应用程序。我需要一种方法来检测启动的应用程序是否崩溃。有些应用程序具有内部崩溃处理功能

如何检测崩溃?

0g0grzrc

0g0grzrc1#

如果它们有内部崩溃处理,就不可能检测到。应用程序将处理错误并正常退出。如果你将自己连接为调试器,你甚至不能检测到这一点。
原因是exception dispatching (MSDN)
1.调试器得到关于异常的通知。2这被称为第一机会异常。3然而,这可能是“正常的”,例如应用程序所期望的FileNotFound。

  1. Windows正在寻找想要处理异常的人。这可能是Python应用程序的except块,C#或C++中的catch块,甚至是通用的“未处理异常处理程序”。
    1.如果没有人想处理应用程序,调试器会再次得到通知。这次,异常被标记为第二次机会异常。这意味着应用程序下一次将崩溃。
    您希望在步骤3中获得通知,但是应用程序已经在步骤2中停止了该过程。
dfddblmv

dfddblmv2#

如果子进程崩溃,你应该能够看到对话框崩溃,并提示采取行动“调试”或“关闭程序”。

相关问题