如何打开其他网络浏览器(Mozilla或Firefox)并显示特定的网址?

11
我知道有内置的Internet Explorer,但我想要的是打开指定URL的Firefox/Mozilla窗口(运行应用程序)。有人可以告诉我如何在C#(.NET)中实现吗?

你的意思是要打开“用户默认”的浏览器还是其他什么? - Ilya Ryzhenkov
是的和不是。我编写的应用程序仅供自己使用,但了解如何打开其他应用程序也会很好。 - Skuta
6个回答

17

你可以这样做:

System.Diagnostics.Process.Start("firefox.exe", "http://www.google.com");

12

这将启动系统定义的默认浏览器:

string url = "http://stackoverflow.com/";
System.Diagnostics.Process.Start(url); 

记住,如果浏览器未正确配置,Process.Start(url) 可能会抛出异常。


请注意,如果浏览器配置有问题,此操作可能会失败。确保捕获适当的异常。我刚刚收到了使用自动崩溃报告报告的此问题,除了捕获正确的异常之外,没有更好的解决方法。 - Vegard Larsen
当然需要管理MIME类型。Hallgrim的代码片段对我很有用。它甚至可以在我的打开的Firefox会话中创建一个新选项卡。太棒了。它还可以处理例如file://k:\test.pdf这样的文件。 - Goodies

1

请参考 ProcessInfo.UseShellExecute


0

如果你明确不想使用用户默认的浏览器,你可以以URL作为第一个参数运行浏览器。

C:\Program Files\Mozilla Firefox>firefox.exe http://google.com

为我启动带有 Google 的 Firefox。但正如其他人所说,您可能会面临未安装或安装在不同位置等风险。


关于安装位置,您可以在HKLM\SOFTWARE\Mozilla注册表下进行检查。 - Blorgbeard

0
使用 Process 类(System.Diagnostics),以 URL 作为进程名称。这将使用系统默认浏览器打开 URL。如果指定浏览器,您可能会面临浏览器不存在的风险。

0
在Visual Studio中,单击菜单上的“文件”->“浏览器”,然后选择您想要使用的浏览器。您也可以在那里更改浏览器。如果“浏览器”菜单选项未出现,则需要从解决方案中选择一个可以在浏览器中启动的项目。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接