关于.net:从Windows窗体打开URL

关于.net:从Windows窗体打开URL

Open a URL from Windows Forms

我正在尝试从Windows窗体提供指向我公司网站的链接。 我希望行为习惯好,并使用用户喜欢的浏览器启动。

从Windows窗体应用程序在用户的默认浏览器中打开URL的最佳方法是什么?


本文将引导您完成整个过程。

简短答案:

1
2
ProcessStartInfo sInfo = new ProcessStartInfo("http://mysite.com/");  
Process.Start(sInfo);

1
2
3
using System.Diagnostics;

Process.Start("http://www.google.com/");

这种方法对我有用,但是我可能会遗漏一些重要的东西。


这是两全其美的选择:

1
2
3
4
5
6
7
Dim sInfo As New ProcessStartInfo("http://www.mysite.com")

Try
     Process.Start(sInfo)
Catch ex As Exception
     Process.Start("iexplore.exe", sInfo.FileName)
End Try

我发现,当在Windows 8设备上运行桌面应用程序时,Blorgbeard提供的答案将失败。就Camillo而言,您应该尝试使用用户的默认浏览器应用程序打开它,但是如果未分配浏览器应用程序,则会引发未处理的异常。

我将其发布为答案,因为它可以处理异常,同时仍尝试在默认浏览器中打开链接。


我喜欢这里描述的方法。启动浏览器时,它考虑了可能的异常和延迟。

为了获得最佳实践,请确保您不仅忽略异常,而且捕获该异常并执行适当的操作(例如,通知用户打开浏览器将其导航到url失败)。


上面的方法很完美,我想向您推荐在哪里可以传递参数的方法。

1
2
Process mypr;
mypr = Process.Start("iexplore.exe","pass the name of website");


推荐阅读