2

現在のプロセスを完全に強制終了し、Windows エラー報告をスキップする方法はありますか? または、例外が OS に渡されないように、よりフレンドリーな方法でグローバル エラーを処理する方法さえありますか?

ローカルでできる限り多くのエラーを処理しますが、エラーの詳細を電子メールで送信するグローバル エラー ハンドラーもあります。これは私がカスタマイズしたエラー報告です。

会社用に作成した WPF C# アプリケーションがあります。ほんの一握りの人しか使っていません。

エラーがスローされ、アプリケーションを閉じる必要があることを示し、電子メールを送信してからアプリケーションを閉じる、よりわかりやすいメッセージを作成する方法を見つけようとしています。しかし、私が何をしても、アプリケーションはフリーズし、Microsoft にエラーを報告しようとします。

4

2 に答える 2

0

Applicationおよびレベルで gloabl 例外ハンドラーを追加する必要がありAppDomainます。

アプリケーション レベルのハンドラ:

Application.Current.DispatcherUnhandledException += OnDispatcherUnhandledException;

void OnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs eventArgs)
{
        // exception handling goes here
}

AppDomain レベルのハンドラー:

AppDomain.CurrentDomain.UnhandledException += OnAppDomainUnhandledException;

void OnAppDomainUnhandledException(object sender, UnhandledExceptionEventArgs eventArgs)
{

}

ただし、処理できない例外タイプ (StackOverflowException など) はほとんどありません。

于 2013-06-26T15:12:32.867 に答える