代码之家  ›  专栏  ›  技术社区  ›  Matt Brindley

用于更改Internet Explorer设置的API(特别是“允许混合内容”)。

  •  2
  • Matt Brindley  · 技术社区  · 15 年前

    我们使用Selenium在我们完全控制的服务器上自动化一些测试。我想找到一种方法,在IE中以编程方式始终允许网页中混合(SSL和非SSL)内容,而不需要IE提示。

    是否有一个API用于在诸如代理之类的东西之外更改资源管理器设置?我当然不介意它是否通过P/Invoke使用平台API。

    操作系统是Server2003数据中心版(运行在AmazonEC2上),IE的版本从IE6到IE8不等。

    我们最终将重建我们的基础图像,但这是一个更大的工作,我想尽量避免。如果我可以从.NET应用程序更改IE的设置,即使它需要提升的权限,那也是完美的。

    2 回复  |  直到 15 年前
        1
  •  3
  •   EricLaw    15 年前

    您正在查找URLACTION 0x1609的注册表设置,该设置存储在HKEY\U local\machine\software\microsoft\windows\currentversion\internet settings\zones内的区域ID(0-4)中。

    值为0=允许,1=提示,3=拒绝。
    http://msdn.microsoft.com/en-us/library/ms537183(VS.85).aspx

    但是请注意,混合内容是一种安全风险,包含此漏洞的站点应该是固定的。 http://blogs.msdn.com/ieinternals/archive/2009/06/22/9797918.aspx

        2
  •  3
  •   Teodor    15 年前

    我不知道设置的任何特定API,但肯定所有这些API都存储在注册表中。

    你可以在这里看看: http://support.microsoft.com/kb/182569

    希望这有帮助, 特奥多尔