Подтвердить что ты не робот

Загрузка .NET UserControls в IE с .NET 4.5

Существует аналогичный вопрос: Загрузка .NET UserControls в IE с .NET 4.0 Этот вопрос по сути тот же, но для .NET 4.5

Этот вопрос начинается с: У меня есть устаревшее приложение, где есть UserControl, который используется как activex на веб-странице, загруженной в IE. До .NET 4.0 существовали политики безопасности и консоль MMC для создания групп кода и т.д. Кажется, что все это произошло с .NET 4.0.

После установки .NET 4.5 кажется, что обходной путь больше не работает, и что IE не может загрузить any usercontrol. Я боюсь, что эта функция полностью удалена. В этом случае у нас есть серьезная переработка, прежде чем наши пользователи смогут установить .NET 4.5

Некоторые примечания:

Все отлично работало с .NET 4.5 RC. 8 - ( Fuslogvw (просмотрщик привязки в сборе) Ведет себя так, как ожидалось, перед обновлением, но после обновления он ничего не записывает. (И usercontrol не загружается.) В процессе производства controll должен работать с полным доверием, но все мое тестирование было выполнено с помощью простого элемента управления, который не требует этого.

Любой, у кого есть предложения или информация об этой функции?

спасибо

4b9b3361

Ответ 1

Это описано на странице совместимости приложений .NET 4.5 на MSDN: http://msdn.microsoft.com/en-us/library/hh367887.aspx. Хостинг управляемых элементов управления внутри IE больше не поддерживается из коробки (см. на полпути вниз в разделе "Веб-приложения" ):

Характеристика: Управляемые элементы управления хостингом браузера из .NET Framework 1.1 и 2.0

Изменить: Хостинг этих элементов управления заблокирован в Internet Explorer.

Влияние: Internet Explorer не сможет запустить приложение, использующее элементы управления управляемым браузером. Предыдущее поведение можно восстановить, установив значение EnableLegacyIEHosting раздела реестра HKLM/SOFTWARE/MICROSOFT/.NETFramework на 1.

К сожалению, информация о ключе реестра является неполной и неправильной:

  • Настройка на самом деле называется "EnableIEHosting".

  • Он должен быть расположен либо в HKCU Hive: HKCU\SOFTWARE\Microsoft \.NETFramework

  • или улей HKLM, но под разными путями, в зависимости от 32/64-битного типа Windows:
    • 32-разрядная система: HKLM\SOFTWARE\MICROSOFT \.NETFramework
    • 64-разрядная система: HKLM\SOFTWARE\Wow6432Node\Microsoft \.NETFramework

Это было протестировано как на Windows Server 2008R2, так и на Windows 8.