有一个类似的问题:Loading .NET UserControls in IE with .NET 4.0这个问题基本相同,但 .NET 4.5
这个问题始于: 我有一个遗留应用程序,其中有一个UserControl,用作IE中加载的网页中的activex。在.NET 4.0之前,有安全策略和MMC控制台用于创建代码组等。看起来这一切都已经用于.NET 4.0。
安装.NET 4.5后,似乎解决方法不再有效,并且IE无法加载任何用户控件。我担心这个功能会被完全删除。在这种情况下,在我们的用户可以安装.NET 4.5之前,我们需要进行一些认真的重写。
一些说明:
有关此功能的消息或信息的任何人?
感谢
答案 0 :(得分:30)
这在MSDN上的.NET 4.5应用程序兼容性页面中有记录: http://msdn.microsoft.com/en-us/library/hh367887.aspx。不再支持在IE中托管托管控件(请参阅“Web应用程序”下的中途):
特点: 托管浏览器托管来自.NET Framework 1.1和2.0的控件
变化: 在Internet Explorer中阻止托管这些控件。
影响: Internet Explorer将无法启动使用托管浏览器托管控件的应用程序。通过将注册表子项HKLM / SOFTWARE / MICROSOFT / .NETFramework的EnableLegacyIEHosting值设置为1,可以恢复以前的行为。
不幸的是,有关注册表项的信息似乎不完整和错误:
该设置实际上称为“EnableIEHosting”。
它必须位于HKCU Hive:HKCU \ SOFTWARE \ Microsoft \ .NETFramework
这已在Windows Server 2008R2和Windows 8上进行了测试。