SHDocVw.InternetExplorer В shellWindows возвращаются слишком много объектов - PullRequest
2 голосов
/ 13 сентября 2011

Следующая строка кода возвращает несколько объектов InternetExplorer, хотя у меня открыто только одно окно браузера (без вкладок) и запущен только один процесс iexplore.exe.Как получить только объект окна открытого браузера?

For Each ie As SHDocVw.InternetExplorer In shellWindows

1 Ответ

2 голосов
/ 18 декабря 2011

Это может помочь

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
...