2011-07-28 23 views
0

.NETアプリケーションに問題があります。 例外をスローせずに終了します。ビジュアルスタジオでデバッグモードで起動すると、デバッギングもエラーメッセージなしで終了します。非同期.NETの例外

私は、CLRが1つの以下の例外スローしたときにこの現象が発生することが記載されているポストStackOverflowException in .NET発見した: - ThreadAbortExceptionの
- OutOfMemoryExceptionが
-
StackOverflowExceptionが

しかし、私は判断することができる方法をこれらの例外のどれ私の場合は投げられましたか?
例外をログに記録することは可能でしょうか?少なくともスタックトレースまたは例外のタイプを取得することは可能でしょうか?

別のアプリを別のプロセスで開始する2番目のアプリケーションを作成しようとしました。このアプローチでは、プロセスが終了したときを検出できましたが、このように取得できる情報は、終了コード-532459699だけでした。誰でもその意味を知っていますか? Visual Studio -> Debug -> Exceptions -> CLR Exceptions

+0

のCOM +関連のようだ - http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/b9328870-9ecf-4c91-9880-cfe9c577de7d/を参照してください – Yahia

答えて

0

みては?

0

あなたがすべてスローされた例外をキャッチするには、Visual Studioデバッガを設定しましたを設定する

0

プログラムのメインのドメイン例外を処理デバッグ/例外に行く...と、共通言語ランタイム例外の隣に投げ列の下のボックスをチェックしない場合は、次の

AppDomain.CurrentDomain.UnhandledException += OnCurrentDomain_UnhandledException; 

//Add these too if you are in windows forms application 
Application.ThreadException += OnApplication_ThreadException; 

Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException); 

を次に例外場合他のアプリケーションがあなたのプロセスを監視することなく、ここからプログラムを再起動することもできます。

private static void OnCurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) 
{ 
#if DEBUG 
    System.Diagnostics.Debugger.Break();//we will break here if we are in debug mode. 
#endif//DEBUG 

    LogException(e); 
    RestartTheApplication();  
} 
関連する問題