私のC++プログラムは、プログラムで処理されない例外をスローするので、デバッグモードではVSがそれを処理し、未処理の例外が発生したという事実についてのウィンドウを表示します。しかし、私はこの例外を表示することができます、それは未処理ですか?どのような型、何がオブジェクトの中に投げられているのですか?VS2010でデバッグモードで捕捉された未処理の例外を分析するにはどうすればよいですか?
1
A
答えて
3
あなたはブレイクしてステップインすることができます。コード通りに解析されるものがあれば、VSはハンドラまたは例外クラスのコンストラクタにステップインします。とにかくこれは私がVS2010でやってきた方法です。
例外オブジェクトのアドレスを知る必要がある場合は、それをウォッチウィンドウに貼り付けてベース例外クラスにキャストできます(例外がシステム例外ではなく、クラス階層が良いです)。
P.S. 中にブレークポイントを設定するために、独自の処理されていない例外ルーチンを持つことができます。
// global scope
LONG WINAPI my_unh_exc_hndlr(_EXCEPTION_POINTERS* excPtrs)
{
return EXCEPTION_CONTINUE_SEARCH; // Put a breakpoint here in IDE.
}
// ... somewhere in the beginning of main()
SetUnhandledExceptionFilter(my_unh_exc_hndlr);
処理されない例外が発生するたびに実行する必要があります。
ランダムにクラッシュする別のプログラムですか?ソースはありませんか?問題ない。特権が少ない場合を除いて、そこでハンドラルーチンを設定するコード(小さなDLL)を注入し、デバッグします。
0
ほとんどの場合、例外が発生すると、Visual Studioはプログラムを中断するオプションを含むダイアログボックスを表示し、コード内のどこに発生したのかを確認する必要があります。さらに、例外が発生する直前にオブジェクト、ポインタ、その他の値を分析することができます。これは、あなたがヒープの破損やそのような厄介なものを扱っていない限り、何がうまくいかないのかを知るのに十分なはずです。例外自体の詳細を知らなくても、もっと言い表すのは難しいです。
0
例外の情報がすべて表示されない場合は、Visual Studioでデバッグ設定を確認してください。 [デバッグ]メニューの[例外]をクリックします。そこからすべての例外を解除することができます。これにより、例外が発生したときにできるだけ早くデバッガを中断させる必要があります。
関連する問題
- 1. 未処理の例外がC#で捕捉されない
- 2. Twisted Deferredコールバックで例外を捕捉するにはどうすればよいですか?
- 3. JavaでAWTスレッド例外を捕捉するにはどうすればよいですか?
- 4. BizTalkで捕捉された例外を送信するC#コード
- 5. Xcodeで捕捉されない例外をデバッグする
- 6. ASP.NET MVCで未処理の例外をログに記録するにはどうすればよいですか?
- 7. VS2010デバッガで処理された例外が発生する
- 8. "ローカルで捕捉された例外の"スロー "を修正するには?
- 9. UnknownHostExceptionが例外で捕捉されないのはなぜですか(java)?
- 10. Visual Studio 2015で処理される例外を無視するにはどうすればよいですか?
- 11. catchブロックでスローされた例外は、後でcatchブロックによって捕捉されますか?
- 12. チェックされていない例外を処理するにはどうすればよいですか?
- 13. 定義されていないルート例外を処理するにはどうすればよいですか?
- 14. 複数の例外をどのように捕捉できますか?
- 15. ポインタによって捕捉された再スロー例外
- 16. オブジェクトインスタンスでスローされた例外をグローバルに捕捉する方法
- 17. PHP5.6サーバで例外が捕捉されない
- 18. javaのmainメソッドによってスローされた例外をどのように捕捉しますか?
- 19. xamarinフォームプロジェクトで処理される例外はどうすればよいですか?
- 20. facebook sdkからスローされた例外メッセージを捕捉して変更するにはどうすればいいですか?
- 21. objective-c例外がスキャッチで捕捉されない3キャッチハンドラを実行する
- 22. 例外処理なしでpyodbcでfetchall()を自動化するにはどうすればよいですか?
- 23. jqueryで文字列の各文字を捕捉するにはどうすればよいですか?
- 24. コンストラクタで例外を適切に処理するにはどうすればよいですか?
- 25. jQueryに渡されるコールバックでスローされた例外を捕捉する方法は?
- 26. Javaでスタックオーバーフローを捕捉して回復するにはどうすればよいですか?
- 27. デフォルトのipython例外ハンドラで捕捉された例外オブジェクトに手を差し伸べるには?
- 28. @catchブロックで捕捉されたオブジェクトのライフサイクルはどのくらいですか?
- 29. Swaggerで例外を処理するにはどうすればよいですか?
- 30. grails spring-security-restプラグインでカスタム認証例外を処理するにはどうすればよいですか?