Internet explorer 如果IE不是默认的web浏览器,如何从.net应用程序启动IE

Internet explorer 如果IE不是默认的web浏览器,如何从.net应用程序启动IE,internet-explorer,.net-3.5,clickonce,Internet Explorer,.net 3.5,Clickonce,我必须以编程方式启动Click Once应用程序,并使用URL启动部署过程。正如我们所知,web浏览器应该是IE来成功完成这项任务(似乎也能解决它)。 如果IE不是默认的web浏览器,如何从.net应用程序启动IE 也许可以使用默认浏览器,然后在安装后切换回上一个浏览器。这很简单,只需启动一个进程,将进程.StartInfo.FileName设置为“explorer”,并将一个参数指向您的网址。请参见下面的示例(C#): 这将打开Internet Explorer,并立即加载作为参数传入的网站

我必须以编程方式启动Click Once应用程序,并使用URL启动部署过程。正如我们所知,web浏览器应该是IE来成功完成这项任务(似乎也能解决它)。 如果IE不是默认的web浏览器,如何从.net应用程序启动IE


也许可以使用默认浏览器,然后在安装后切换回上一个浏览器。

这很简单,只需启动一个进程,将
进程.StartInfo.FileName
设置为“explorer”,并将一个参数指向您的网址。请参见下面的示例(C#):

这将打开Internet Explorer,并立即加载作为参数传入的网站


另外,
Process
类是
System.Diagnostics
命名空间的一部分。请务必在代码文件的顶部引用它。

没问题,很高兴我能提供帮助。:)在Windows 8中不工作。打开默认浏览器(我的浏览器是Chrome)。@AndrewGee:有趣。我没有Windows 8 PC来测试这个,但是,请尝试更改
p.StartInfo.FileName=“explorer”行,这样您就可以输入explorer应用程序的完整路径,而不是“explorer”。如果这不起作用,您可能想问一个新问题,并明确表示这是严格针对Windows 8的。另外,请在这里发布一个链接到您的后续问题。我对正确的答案感兴趣,如果你找到的话。@RLH我试过
p.StartInfo.FileName=“C:\Windows\explorer.exe”但这给了我同样的结果(在Chrome中打开)。我最终使用了这个选项:
System.Diagnostics.Process.Start(“IEXPLORE.EXE”,MyURLHere)
,它在Windows 8中工作。@AndrewGee:我更新了我的答案,使用
IEXPLORE.EXE
,而不是
explorer.EXE
。我没有Windows8机器来测试这段代码,但它应该有同样的效果。如果您不介意,请发布另一条评论,让我知道我的代码片段是否有效。如果没有,我会用Win8的附录更新我的帖子。
Process p = new Process();
p.StartInfo.FileName = "iexplore.exe";
p.StartInfo.Arguments = "http:\\\\www.google.com";
p.Start();