このトピックについて、ここで多くのスレッドを調べましたが、成功しませんでした。私たちの WPF アプリケーションの App.xaml.cs では、DispatcherUnhandledExceptions と AppDomain.CurrentDomain.UnhandledException の処理がすべてをキャッチしていないようです。
この特定の例では、7 つのプリズム モジュールがあります。私の例外処理コードは以下のとおりです (UnhandledException とほぼ同じです):
private void OnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
{
try
{
var ex = e.Exception.InnerException ?? e.Exception;
var logManager = new LogManager();
logManager.Error(ex);
if (!EventLog.SourceExists(ex.Source))
EventLog.CreateEventSource(ex.Source, "AppName");
EventLog.WriteEntry(ex.Source, ex.InnerException.ToString());
var emb = new ExceptionMessageBox(ex);
emb.ShowDialog();
e.Handled = true;
}
catch (Exception)
{ }
}
問題は、モジュールで発生する未処理の例外のようです。 これらは上記のコードではキャッチされず、アプリケーションがクラッシュし、ログに記録したりメッセージを表示したりすることはありません。
誰もこれを経験していますか?