Link to home
Start Free TrialLog in
Avatar of biffman9
biffman9

asked on

Automating Internet Explorer

My application needs to get the URL of the page currently displayed in IE and respond accordingly. Here's part of the code I'm using:
...
    On Error GoTo StartExplorer
    Set ie = GetObject(, "InternetExplorer.Application")
    Exit Function
StartExplorer:
      If Err.Number = 429 Then _
      Set ie = CreateObject("InternetExplorer.Application")
...

According to the documentation, the GetObject function is supposed to start a new instance of IE only if IE is not already running. My problem is that it always opens a new instance of IE.

Am I using GetObject correctly? Or is there any other way to get the current URL (and go to a new URL) in the currently active IE window? I do not want to embed the browser within my app. (I am using DDE with Netscape, and it works fine.)

Thanks. Jim
Avatar of Mirkwood
Mirkwood

Here are the DDE topics:
IExplore|WWW_OpenUrl

Avatar of biffman9

ASKER

I'm willing to give DDE with IE a try, but I'll need more than just the open URL call. I'll also need at least an Activate and a getURL. Pointing me to where IE DDE is documented will do. Thanks.
Goto support.microsoft.com and search for Q160957
This article describes DDE in IE.

BTW:
The other topics you requested are WWW_GetWindowInfo and WWW_Activate
Good answer. As it turns out, the IE DDE is the same as Netscape, making my code much more elegant. Thanks.

I'm not sure how to re-grade your answer as acceptable and good.


ASKER CERTIFIED SOLUTION
Avatar of Mirkwood
Mirkwood

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I've fount that Internet Explorer's response to DDE is a bit unpredictable (not a surprise, I guess, given its problems in other areas). If more than one IE window is open, only the first-opened IE window will respond to DDE; but if you close that first window, the other IE windows will respond as they should.