<legacyCorruptedStateExceptionsPolicy> 要素
共通言語ランタイムがアクセス違反およびその他の破損状態例外をキャッチするマネージド コードを許可するかどうかを指定します。
configuration
runtime
<legacyCorruptedStateExceptionsPolicy>
構文
<legacyCorruptedStateExceptionsPolicy enabled="true|false"/>
属性および要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 | 説明 |
---|---|
enabled |
必須の属性です。 アプリケーションがアクセス違反などの破損状態例外エラーをキャッチするように指定します。 |
enabled 属性
[値] | 説明 |
---|---|
false |
アプリケーションでは、アクセス違反などの破損状態例外エラーはキャッチされません。 既定値です。 |
true |
アプリケーションでは、アクセス違反などの破損状態例外エラーがキャッチされます。 |
子要素
なし。
親要素
要素 | 説明 |
---|---|
configuration |
共通言語ランタイムおよび .NET Framework アプリケーションで使用されるすべての構成ファイルのルート要素です。 |
runtime |
アセンブリのバインディングとガベージ コレクションに関する情報が含まれています。 |
解説
.NET Framework Version 3.5 以前の共通言語ランタイムでは、破損したプロセス状態によって発生した例外をキャッチするマネージド コードが許可されました。 この種類の例外の例として、アクセス違反があります。
.NET Framework 4 以降では、マネージド コードは catch
ブロック内のこれらの種類の例外をキャッチしなくなりました。 ただし、次の 2 つの方法でこの変更をオーバーライドし、破損状態例外の処理を維持することができます。
<legacyCorruptedStateExceptionsPolicy>
要素のenabled
属性をtrue
に設定します。 この構成設定はプロセス全体に適用され、すべてのメソッドに影響します。
または
- 例外の
catch
ブロックを含むメソッドに System.Runtime.ExceptionServices.HandleProcessCorruptedStateExceptionsAttribute 属性を適用します。
この構成要素は、.NET Framework 4 以降でのみ利用できます。
例
次の例では、アプリケーションを .NET Framework 4 より前の動作に戻し、すべての破損状態例外エラーをキャッチするように指定する方法を示します。
<configuration>
<runtime>
<legacyCorruptedStateExceptionsPolicy enabled="true" />
</runtime>
</configuration>
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET