如何以编程方式将网站添加到兼容性列表Internet Explorer 11?

Lan*_*ine 5 vb.net internet-explorer compatibility-mode ie-compatibility-mode

我尝试在以下位置添加注册表项:

Hive: HKEY_CURRENT_USER
Key Path: Software\Policies\Microsoft\Internet Explorer\BrowserEmulation\PolicyList\
Value name: sub.companyname.com
Value data: sub.companyname.com
Run Code Online (Sandbox Code Playgroud)

但是,在Internet Explorer 11中,此方法不起作用,因为列表已移动.

My.Computer.Registry.SetValue("Software\Policies\Microsoft\Internet Explorer\BrowserEmulation\PolicyList", "sub.companyname.com", "sub.companyname.com")
Run Code Online (Sandbox Code Playgroud)

Rol*_*olo 5

我有同样的问题,但创建你提到的注册表项对我有用.

您是否尝试过手动创建注册表项?

如果您运行32位IE 11,则必须在32位注册表配置单元中创建注册表项,如果您运行64位IE 11,则在64位注册表配置单元中创建注册表项.

IE 11 32位开启:

赢32位 - > HKEY_CURRENT_USER\Software\Policies ...

赢64位 - > HKEY_CURRENT_USER\Wow6432Node\Software\Policies ...

IE 11 64位开启:

赢32位 - >无法安装IE 64位

赢64位 - > HKEY_CURRENT_USER\Software\Policies ...

记得:

  • 如果在创建注册表项时已打开IE,则需要重新启动它.
  • 允许使用兼容模式的新域将不会显示在兼容性视图设置列表中.


小智 2

在 Windows 8.1 Enterprise/IE11 下,该条目似乎是一个二进制条目 - 这是我在系统注册表中的“工具/兼容性视图设置”下看到添加的条目的地方:

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\BrowserEmulation\ClearableListData
Run Code Online (Sandbox Code Playgroud)

查找名为 UserFilter 的二进制值 - 当您查看它时有点难以阅读,但您可以看出它保存了您的条目。

我们有几个站点需要添加到列表中,因此很可能会从“主”计算机导出列表,然后将其至少通过组策略首选项推送一次以进行初始设置。不确定此时我们将如何编写附加条目的脚本,以便当用户添加他们的“个人”设置时,我们不会覆盖该值,而是附加到它,但我猜一次只能添加一件事。