3

我正在寻找一种方法来杀死一个 Windows exe 程序,当从 python 脚本进行测试时,它会崩溃并向用户显示一个对话框;由于该程序被多次调用,并且可能反复崩溃,因此不适合。

问题对话框是 Windows 错误的标准报告:

“Foo.exe遇到问题需要关闭。对于给您带来的不便,我们深表歉意”

并提供调试、发送错误报告和不发送按钮。

我能够杀死由崩溃导致的其他形式的对话框(例如,调试构建的断言失败对话框是可以的。)

我在用于调用 .exe 的子进程模块的 Popen 对象上尝试了 taskkill.exe、pskill 和 terminate() 函数

有没有人遇到过这个特定的问题,并找到了解决方案?

我希望自动化用户输入来选择窗口,然后按“不发送”按钮是一种可能的解决方案,但如果可能的话,我想要更简单的东西

4

2 回答 2

3

禁用错误报告功能不是更容易吗?

于 2010-06-01T20:10:22.040 回答
0

如果要使用 CreateProcessEx 或 WinAPI 特定函数,则可以调用 TerminateProcess 或 TerminateThread 来强制结束进程。

于 2010-06-01T18:59:01.240 回答