2

当 IE10 是 Windows 8 上的默认浏览器,并且 Internet 选项 -> 程序 -> 选择打开链接的方式设置为Always in Internet Explorer时,当您通过 URL 打开新进程时,它将在 Metro 版本的 IE10 中打开。

我能想到两种解决方法,但我还没有找到任何一种方法。

  1. 传递一个参数iexplore.exe告诉它在桌面上打开。
  2. 以编程方式更改注册表中该 Internet 选项的值,打开 URL,然后将其设置回之前设置的值。

我有一种感觉,#2是我必须走的路线,但是,在注册表中HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings我看不到任何与该设置相近的东西。

以前有没有人解决过这个问题并且可以提供任何见解?

这不是道德问题 - 我只需要知道设置在哪里,或者是否有办法通过参数将其强制进入桌面。我真的真的不需要知道这并不理想;我已经完全清楚这个事实了。

4

2 回答 2

2

现在我们了解了您的场景(自动化测试),我们可以解释如何正确执行此操作,并且它不涉及覆盖任何用户设置,甚至暂时也不涉及。即使用户将默认浏览器设置为 Internet Explorer 以外的其他浏览器,它也可以工作。

您所做的是打开 Internet Explorer 的显式桌面版本并将其导航到您的站点。这是 JavaScript 中的一个示例。您可以通过一点点导入使其适应 C#,或者您可以选择卓越的解决方案并将 IE 托管在您的 C# 应用程序中。

var ie = new ActiveXObject("InternetExplorer.Application");
ie.Visible = true;
ie.Navigate("http://www.microsoft.com/");
WScript.Sleep(5000); // five seconds, say
ie.Quit();
于 2013-04-14T15:10:04.983 回答
0

如何强制 IE 在 Windows 8 上以桌面模式打开

如果用户想要在 Metro 中使用它并一直在 Metro 中工作,那么在使用 URL 时切换回桌面模式会很烦人。希望该网页是您想要的。

于 2013-04-14T14:37:34.710 回答