【问题标题】:How to skip or disable displaying crash message box in Win7Win7中如何跳过或禁用显示崩溃消息框
【发布时间】:2018-11-03 12:09:21
【问题描述】:
我正在虚拟机上开发和运行 Coded UI 自动化测试。
执行 UI 自动化的进程是 QTAgent32_40.exe
偶尔(很少)- QTAgent 崩溃,原因未知(目前)。
问题是测试永远卡住了,直到我关闭错误消息,并且任何进一步的测试都不会运行。
我收到此消息 - 试图查看堆栈跟踪 - 没有任何用处:
我用谷歌搜索了一下,并试图禁用 Windows 错误报告服务,现在消息不同了:
我想以某种方式禁用或关闭消息 - 以便代理可以重新启动并继续。
我已阅读有关 QTAgent 的所有问题 - 但找不到我的问题的解决方案。
【问题讨论】:
标签:
.net
unit-testing
windows-7
coded-ui-tests
【解决方案1】:
我假设你无法控制 ober QTAgent32.exe,你只需使用它启动它
System.Diagnostics.Process.Start("QTAgent32.exe");
(或类似的东西)并等待它完成。
在这种情况下,如果它不想和平退出,您可以使用超时并杀死它:
var process = Process.Start("QTAgent32.exe");
Thread.Sleep(60000); // Wait for one minute
if (!process.HasExited)
{
process.Kill();
}
编辑:您当然可以使用轮询,这意味着循环包含更短的等待时间并检查进程是否已退出,而不是总是等待一分钟。