【发布时间】:2016-02-18 07:17:25
【问题描述】:
我的项目的 App 类中有一个未处理异常的处理程序。这是为了设置一个发送反馈按钮。
App.xaml.cs
private void Application_DispatcherUnhandledException(
object sender, DispatcherUnhandledExceptionEventArgs e)
{
try
{
// Try to collect feedback with dialog.
new ApplicationExceptionDialog(e).ShowDialog();
}
catch
{
MessageBox.Show(
"A problem has occurred with the program:\r\n\r\n" +
e.Exception.Message + "\r\n\r\n" +
"The application will now exit.",
"Application Error",
MessageBoxButton.OK,
MessageBoxImage.Error);
}
finally
{
Application.Current.Shutdown(1); // ← Is this okay?
}
}
问题
除了处理各种异常,当所有其他方法都失败时,在未处理的异常后退出应用程序的正确方法是什么?
编辑
这个问题是特定于 WPF 应用程序的。我还在应用程序中有非托管代码,以使登录更加安全。我没有遇到任何问题,但我需要确保如果出现问题,使用的退出过程是最佳选择。
【问题讨论】:
-
@RahulTripathi:这个问题是关于弹出消息框的,接受的答案使用
Process.Kill()。你同意这个答案吗?
标签: c# wpf exception-handling