0

假设我的应用程序用户的默认浏览器是 IE。我希望我的应用程序通过点击事件重定向到使用谷歌浏览器的网站

例如:单击一个按钮,然后我自己的网站会弹出一个新的 chrome 选项卡/窗口)

我已经尝试在 Visual Basic 中使用 webbrowser 工具,但是网站布局变得一团糟,所以我想这是最好的方法。

PS:我使用的是 Visual Basic Studio 2010

4

3 回答 3

2

您尚未说明这是 WinForms 还是 ASP.NET,但我假设您使用的是 WinForms

您的问题具有误导性,因为它提到了重定向,这是ASP.NET Web 应用程序中的一种方法。

但是,要回答这个问题:- 您可以使用默认浏览器打开网页,只需执行以下操作:

Process.Start("http://www.bbc.co.uk/f1")

如果要打开特定浏览器,可以尝试搜索 exe 文件。

我机器上的 Google Chrome exe 已在其中,AppData\Local但在不同的机器上可能会有所不同。

以下代码找到了 chrome exe 并在我的机器上加载了一个页面:

Dim files As ReadOnlyCollection(Of String)
Dim startFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Google\Chrome")
files = My.Computer.FileSystem.GetFiles(startFolder, FileIO.SearchOption.SearchAllSubDirectories, "chrome.exe")
If files.Count > 0 Then
    'We found the exe so open a web page
    Process.Start(files(0), "http://www.bbc.co.uk/f1")
Else
    'Chrome not found so start the default browser
    Process.Start("http://www.bbc.co.uk/f1")
End If

但如果路径发生变化,这将失败。

于 2013-06-18T11:56:55.233 回答
2

上述方法的另一种选择是使用注册表。

Dim chromePath As String = _ Microsoft.Win32.Registry.GetValue( _ "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\chrome.exe", _ "路径", "密钥不存在")

如果 chromePath 设置为空,则找不到。

正如他们所说,有很多方法可以给猫剥皮!

于 2013-06-18T12:45:29.300 回答
1

如果您知道 Chrome 路径的位置,您可能可以执行以下操作(例如,使用 Internet Explorer,因为没有安装 Chrome)

Process.Start("C:\Program Files (x86)\Internet Explorer\iexplore.exe", " http://www.google.com ")

于 2013-06-18T11:36:05.997 回答