0

2つのプログラムで同じ例外を処理しましたが、結果が異なります。どうしてか分かりません。

最初の結果は、プログラムがScapshot1をキャッチできなかった結果です

。www.freeimagehosting.net/ uploads / e2b37433a3.png

2つ目は、プログラムが成功したものです。

Scapshot2:www.freeimagehosting.net/uploads/6ab7564999.png

なぜ私はそんなに違うのですか?

4

5 に答える 5

3

さて、あなたは実際には多くのコンテキストを提供していません。チェックすること:

  • それらは同じタイプのアプリケーション(WPF、WinForms、Silverlight、コンソールなど)ですか?
  • 同じバージョンの.NETを使用していますか?
  • それらは同じバージョンのWindowsで実行されていますか?
  • 未処理の例外に対応するための同じコードがありますか?
于 2010-08-16T09:19:13.087 に答える
3

私が見ることができることから、#1ではデバッガーで実行しています。#2ではあなたはそうではありません。

実際、メッセージは同じであるため、例外はまったく同じであると想定します。違いはありません、IOW。

于 2010-08-16T09:19:36.330 に答える
1

理解できるかわかりませんが、同じエラーのようですが

  • pic1-未処理のエラー
  • pic2-処理されたエラー

詳細情報を提供してください

于 2010-08-16T10:35:50.343 に答える
1

例外が発生した場合のデバッガーの動作は大きく異なる可能性があります。

例外処理(デバッグ)

于 2010-08-16T10:49:04.770 に答える
1

Application.Run()が呼び出された後でApplication.UnhandledExceptionModeを変更することはできないため、例外をキャッチするのは明らかにそれではありません。

これにより、AppDomain.UnhandledExceptionが残ります。はい、デバッガーはそのイベントが発生する前に例外で中断します。優れた機能で、例外の理由をデバッグできます。F5キーを押すだけで実行が続行され、イベントハンドラーがトリガーされます。2番目のスクリーンショットでデバッガーを使用しているという証拠はありません。Ctrl+F5で開始したようです。

于 2010-08-16T13:04:36.117 に答える