0

.Net Framework 3.5 で記述されたアプリケーションがあります。これは、Windows Server 2003 R2 で実行されているサービスです。アプリケーションにはグローバルな例外処理が含まれており、try-catch の外部で発生するすべての例外は、このグローバルな例外処理によってキャッチされます (AppDomain.UnhandledException で行われます)。

とにかく、アプリケーションがクラッシュすることが起こります。クラッシュ後、Windows のイベント ビューアーに「アプリケーション エラー」が表示されます。それは私に言います:

Faulting application name: MyApplication.exe
Faulting module name: KERNELBASE.DLL, version 6.3.9600.18007
Exception code: 0xe06d7363

このコードは frmMain_Load 内にあります。

 AddHandler Application.ThreadException, AddressOf ThreadExceptionHandler
 AddHandler AppDomain.CurrentDomain.UnhandledException, AddressOf UnhandledExceptionHandler

これは、未処理の例外の処理です。

   Private Shared Sub ThreadExceptionHandler(ByVal sender As System.Object, ByVal e As System.Threading.ThreadExceptionEventArgs)

    HandleException(e.Exception, False)

End Sub

Private Shared Sub UnhandledExceptionHandler(ByVal sender As System.Object, ByVal e As System.UnhandledExceptionEventArgs)

    HandleException(CType(e.ExceptionObject, Exception), e.IsTerminating)

End Sub

Private Shared Sub HandleException(ByVal p_Exception As Exception, ByVal p_Kill As Boolean)

    Try
        ERROR_LOG.AddFatalError(New Exception("Unbehandelte Ausnahme." & If(p_Kill, " Die Anwendung wird beendet.", ""), p_Exception))
    Catch
    End Try
    If p_Kill Then System.Environment.Exit(-1)

End Sub

更新 1) コードのさまざまな場所にキャッチされていない例外を挿入しましたが、例外が処理されるたびに。これは私の開発環境にあります。たぶん、サーバーでこれをテストする必要があります。

どのような問題がありますか? このエラーを分析するにはどうすればよいですか? どんなヒントでも大歓迎です。

4

0 に答える 0