2
即使我只有一個瀏覽器窗口打開(沒有選項卡)並且只有一個iexplore.exe進程正在運行,以下代碼行可以返回多個InternetExplorer對象。我如何才能打開瀏覽器窗口對象?SHDocVw.InternetExplorer在shellWindows中返回太多對象
For Each ie As SHDocVw.InternetExplorer In shellWindows
即使我只有一個瀏覽器窗口打開(沒有選項卡)並且只有一個iexplore.exe進程正在運行,以下代碼行可以返回多個InternetExplorer對象。我如何才能打開瀏覽器窗口對象?SHDocVw.InternetExplorer在shellWindows中返回太多對象
For Each ie As SHDocVw.InternetExplorer In shellWindows
這可能有助於
Dim objShellWindows As New SHDocVw.ShellWindows
Dim rVal As SHDocVw.InternetExplorer
For Each rVal In objShellWindows
Debug.Print TypeName(rVal.Document)
If TypeName(rVal.Document) = "HTMLDocument" Then
If rVal.Name = "Windows Internet Explorer" Then
rVal.Visible = False
rVal.Visible = True
Set ie = rVal
ie.Quit
Set ie = Nothing
End If
End If
Next rVal
您還將得到任何打開Windows資源管理器窗口。可以工作的一件事是試圖將ie.Document強制轉換爲mshtml.IHtmlDocument,它只能用於IE實例。 –