重用Internet Explorer COM自动化对象

Zom*_*ie8 6 com vbscript internet-explorer automation

我正在使用VBScript宏来利用InternetExplorer.Application COM自动化对象,我正在努力重用此对象的现有实例.

根据我的阅读,我应该能够使用vbscript中的GetObject()方法来获取该对象的现有实例.

当我执行以下代码时,我得到"对象创建失败 - 名字对象语法错误".

我的问题真的是语法吗?

我的问题是我如何尝试使用此对象?

或者我想要完成的事情还没有完成?

码:

Dim IEObject as object

Sub Main  
  Set IEObject =  GetObject( "InternetExplorer.Application" )

  'Set the window visable
  IEObject.Visible = True

  'Navigate to www.google.com
  IEObject.Navigate( "www.google.com" )
End Sub
Run Code Online (Sandbox Code Playgroud)

此外,我运行CreateObject()没有问题,它打开一个新的Internet Explorer窗口并导航我想要的地方,但我宁愿不让宏打开多个Internet Explorer实例.

Tes*_*101 5

试试这个:


Set IEObject =  GetObject( ,"InternetExplorer.Application" )
Run Code Online (Sandbox Code Playgroud)

*注意"InternetExplorer.Application"之前的逗号

编辑:试试这个:


Dim IE As SHDocVw.InternetExplorer

Set IE = GetObject(,"InternetExplorer.Application")
Run Code Online (Sandbox Code Playgroud)

你也可以试试这个:


Dim ShellApp
Set ShellApp = CreateObject("Shell.Application")
Dim ShellWindows
Set ShellWindows = ShellApp.Windows()
Dim i
For i = 0 To ShellWindows.Count - 1
    If InStr(ShellWindows.Item(i).FullName, "iexplore.exe") <> 0 Then
        Set IEObject = ShellWindows.Item(i) 
    End If
Next
IEObject.Navigate2("http://www.google.com")
Run Code Online (Sandbox Code Playgroud)

编辑:
你正在尝试的可能是不可能的,看看这个.http://support.microsoft.com/kb/239470