我想知道我是否可以捕获由我开始使用Process.Start(...)的另一个进程抛出的未处理异常
我知道我可以使用此链接捕获standered错误,但我想要的是捕获通常由.NET环境的Just In Time调试器捕获的错误,该窗口包含以下单词:"发生了未处理的异常在你的应用程序中.如果你继续,应用程序将忽略此错误并尝试继续.如果你单击退出,应用程序将立即关闭...."然后是异常消息,然后是"继续", "退出"按钮.
我正在使用System.Diagnostics.Process启动外部进程.这是批处理作业的一部分,所以如果一个进程崩溃,我想处理它,让其余进程继续.
目前正在发生的事情是Windows弹出一个对话框,告诉我该程序已经崩溃,只有在我解雇后才会手动退出该进程.
根据这个问题,Process.Responding属性仅适用于具有UI的程序(我正在启动的进程是一个控制台应用程序).
我还查看了进程提供的各种事件,但没有一个事件在崩溃时被触发.
有任何想法吗?
在我的控制台应用程序中,我有类似的代码
    Process DKU = new Process();
    DKU.StartInfo.FileName = "MSSQLExecutor.exe";
    DKU.Start();
    DKU.WaitForExit();
    Console.WriteLine("lets move on ");
这工作正常,它等待MSSQLExecutor.exe完成其工作,然后应用程序继续.
我的问题是,有时MSSQLExecutor.exe崩溃,Windows默认显示一个用于结束程序的对话框.此时,我的应用程序将永远等待用户单击"关闭"按钮.
我想避免这种情况,因为我的应用程序将在没有用户交互的情况下作为服务运行.
