检查已打开的浏览器和URL

时间:2015-07-21 00:48:21

标签: vb.net url textbox

有没有办法在VB.NET中检查已打开的浏览器窗口是否有特定的URL,以便Process.Start无法打开新的浏览器窗口?例如,如果我已经打开了Pinterest,我想将我的新搜索从我的TextBox发送到已经打开的窗口。

我的代码每次都会打开新窗口:

System.Diagnostics.Process.Start("iexplore.exe", "https://www.pinterest.com/search/pins/?q=" & Net.WebUtility.UrlEncode(TextBox1.Text))

1 个答案:

答案 0 :(得分:0)

此代码段应该为您完成。

它将浏览包含搜索查询(Squery)的Internet Explorer实例的Windows资源管理器窗口,并要求用户输入搜索查询。

使用的引用位于(%Windir%\ System32 \ shdocvw.dll)

Sub Main()
        Dim shellWins As SHDocVw.ShellWindows
        Dim explorer As SHDocVw.InternetExplorer

        shellWins = New SHDocVw.ShellWindows
        Dim SQuery As String = "https://www.pinterest.com/search/pins/?q="
        For Each explorer In shellWins
            If explorer.Application.Name = "Internet Explorer" And explorer.LocationURL.Contains(SQuery) Then
                explorer.Navigate(SQuery & InputBox("Pinterest", "", Nothing, Nothing))
            End If
        Next

        shellWins = Nothing
        explorer = Nothing
    End Sub

enter image description here