1

例外がスローされるという異常な(私にとって)問題があります。例外がスローされた後、アプリケーションはループし、終了しません。

if(!foundRemoteID)
{
throw new ArgumentOutOfRangeException(
          "value",
          "Remote ID was not found."
          );
}

「if(!foundRemoteID)」行にブレークポイントを挿入しましたが、最初に例外がスローされた後、プログラムはまったくヒットしません。「throw new (..)」で何度もループするだけです。

-どのレベルでも try{} catch{} ブロックがまったくありません。-このコードを含むループはありません

私はそれを入れてみました:

try
{
(..)
}
finally
{
Enviroment.Exit(1);
}

しかし、final{} ブロックはヒットしません。

このクラスの他の throw new (..) も同じように動作します。

些細なことを見逃していますか?

更新: 問題は私のプロジェクトとは関係ありません。だけの単純なコンソール アプリケーションを作成しました。

throw new FileNotFoundException();

Main() メソッドでは、問題は解決しません。

VS2010 の設定をデフォルトにリセットしようとしましたが、役に立ちませんでした。

4

1 に答える 1

4

ほとんどの場合、これはアプリケーションの実際の動作ではありません。Visual Studio は、未処理の ArgumentOutOfRangeException があると常に中断するように設定されています。

「デバッグなしで開始」を押すと、これを確認できます。

設定を変更する場合は、メニューを参照して [デバッグ] -> [例外] を選択すると、次のように表示されます。次に、「ユーザー未処理」のチェックを外します。

個人的には、ほとんどの場合、設定をそのままにしておくことをお勧めします。未処理の例外を探し出すときに非常に役立ちます。

Visual Studio のデバッグ例外

于 2013-10-14T19:59:04.763 に答える