<Элемент legacyCorruptedStateExceptionsPolicy>
Указывает, разрешает ли среда CLR перехватывать нарушения доступа и другие исключения поврежденного состояния в управляемом коде.
<Конфигурации>
<Среды выполнения>
<legacyCorruptedStateExceptionsPolicy>
Синтаксис
<legacyCorruptedStateExceptionsPolicy enabled="true|false"/>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Атрибуты
Атрибут | Описание |
---|---|
enabled |
Обязательный атрибут. Указывает, что приложение будет перехватывать ошибки с исключениями поврежденного состояния, такими как нарушения доступа. |
Атрибут enabled
Значение | Описание |
---|---|
false |
Приложение не будет перехватывать ошибки с исключениями поврежденного состояния, такими как нарушения доступа. Это значение по умолчанию. |
true |
Приложение будет перехватывать ошибки с исключениями поврежденного состояния, такими как нарушения доступа. |
Дочерние элементы
Отсутствует.
Родительские элементы
Элемент | Описание |
---|---|
configuration |
Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework. |
runtime |
Содержит сведения о привязке сборок и сборке мусора. |
Комментарии
В платформа .NET Framework версии 3.5 и более ранних среда CLR позволяла управляемому коду перехватывать исключения, вызванные поврежденными состояниями процесса. Примером исключения такого типа является нарушение доступа.
Начиная с платформа .NET Framework 4 управляемый код больше не перехватывает эти типы исключений в catch
блоках. Однако вы можете переопределить это изменение и сохранить обработку исключений поврежденного состояния двумя способами:
<legacyCorruptedStateExceptionsPolicy>
Задайте атрибуту элементаenabled
значениеtrue
. Этот параметр конфигурации применяется по всему процессу и влияет на все методы.
-или-
- Примените System.Runtime.ExceptionServices.HandleProcessCorruptedStateExceptionsAttribute атрибут к методу, который содержит блок исключений
catch
.
Этот элемент конфигурации доступен только в платформа .NET Framework 4 и более поздних версий.
Пример
В следующем примере показано, как указать, что приложение должно отменить изменения к поведению до платформа .NET Framework 4, и перехватывать все ошибки с исключениями поврежденного состояния.
<configuration>
<runtime>
<legacyCorruptedStateExceptionsPolicy enabled="true" />
</runtime>
</configuration>