Симптомы
Предположим, что платформа.NET Framework Microsoft 4.7, установленных на компьютере. Можно заметить, что приложения, работающие на платформа.NET Framework не влияют на параметры совместимости, которые указаны в реестре параметры AppContext. В этом случае при попытке установить параметр реестра для флага AppContext, его поведение соответствует поведению значение, указанное в параметре реестра имеет значение False.
Причина
Когда программа считывает значение параметр AppContext в реестре, не удается получить данные. В этом случае предполагается, что что-то неверно в способе параметр указан в реестре, а приложению возвращается значение False .
Решение
Чтобы устранить эту проблему, используйте файл конфигурации(pp.config)приложение устанавливает флаг нужное значение.
Добавьте элемент < AppContextSwitchOverrides > в разделе < время > выполнения файла app.config . Коммутатор имеет один атрибут, то есть значения, значением которого является строка, которая представляет пару ключ или значение, содержащая имя параметра и значение.
Чтобы определить несколько параметров, разделяйте пары ключ или значение каждого параметра в <AppContextSwitchOverrides> значение атрибута элемента точкой с запятой. В этом случае элемент <AppContextSwitchOverrides> имеет следующий формат:
XML
<AppContextSwitchOverrides value=”switchName1=value1;switchName2=value2” />
С помощью элемента < AppContextSwitchOverrides > , чтобы определить параметр конфигурации имеет область действия приложения. То есть она влияет на только приложение.
Поскольку файлы app.config в зависимости от приложения, следует сделать это для всех уязвимых приложений.
Дополнительные сведения о AppContext находятся в следующем разделе на веб-узле Microsoft Developer Network (MSDN):
Дополнительные сведения
Эта проблема была введена как часть работы, чтобы включить AppContext переключатели, используемые очень рано в жизненном цикле AppDomain. Это позволило изменения, которые в противном случае будет прерываться выполняться безопасно, даже если код, который требуется использовать коммутатор AppContext работала очень рано в AppDomain перевести вверх.
Проблема — о объем памяти выделяется для хранения значения, которое считывается из реестра. Если недостаточно выделенного места для хранения значения, которое считывается из реестра, он возвращается к значению по умолчанию False.
Статус
Корпорация Майкрософт подтвердила, что это проблема в продуктах Майкрософт, перечисленных в разделе «Данная статья применима к», и корпорация Майкрософт работает над решением в будущих версиях продукта.