有没有办法在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))
答案 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