InternetExplorer.Application is 32 bit. But I want 64 bit. How do I get it?

Posted on 2011-04-22
Last Modified: 2013-11-25
I am looking at a plugin for keepass ( The plugin (keeform) uses the following to instantiate an object of IE:

$oIE = ObjCreate("InternetExplorer.Application")

This creates an object that is 32-bit IE. I want 64-bit IE. How would I change this?
$oIE = ObjCreate("InternetExplorer.Application")
    _KeeDebugPrint ("ObjName ($oObject) = " & ObjName ($oIE), $_KeeDebugLevelErr)

    With $oIE
        ; Show browser window
        .Visible = True
        ; Navigate to URL; wait until IE and page is loaded
        Until (MyReadyState(.readyState))
        Until (MyReadyState(.document.readyState))
        _KeeDebugPrint ("Navigated to " & $Url , $_KeeDebugLevelInfo)

Open in new window

Question by:DrDamnit
    LVL 3

    Expert Comment

    can you elaborate a little bit more ?

    Vb6 shell will always create a 32bit object because Vb6 - IS - 32bit.
    The default ObjCreate is a 32bit function

    Nevertheless, on Win7, IE will still be launched in his regular state,
    That mean, if you got Win7 64, it will launch the 64bit version of IE.

    If you could explain what you're trying to achieve, it might help finding a solution.
    LVL 7

    Expert Comment

    Are you sure about that the Win7 64 thing?  My Win7 64 bit defaults to launch "C:\Program Files (x86)\Internet Explorer\iexplore.exe"
    LVL 3

    Expert Comment



    light came in my head when you asked your question... thanks...

    Microsoft made IE available in 32bit AND 64bit on their Win7 64 because IE 64bit can ONLY run 64bits ActiveX plugin.

    That mean since it doesn't exist "yet" many 64bit version of current activeX on the market, you need 32bits IE browser as well...
    (as of march 2011, you still can't see Flash animation on your 64bit IE browser)

    and yet, there is NO speed advantage to run 64 vs 32bits version of ANY broswer.  Even if the memory size of buffer is increased to 64bits, TXT (html, asp, js, etc...) file doesn't use that kind of oversized buffer.  and all our current marketed picture format are 32bit based. (png, tiff, jpg, bmp, gif)

    That mean you won't get any speed difference loading theses picture from the net eitheir.
    In other word. The only thing that is speeded up in a 64bits browser is the initial "load time"
    that take what 2 second ??

    therefore, I'm asking the author again... with all current disadvantage of 64bits browser...  Why you need to run IE64bits again ?  knowing that answer, we could find an alternative answer to your problem.
    LVL 32

    Author Comment

    The *32 bit browser keeps hanging for some reason with one specific program (the Keepass add-in, keeForm).

    Since it appears to be instantiating an object from: $oIE = ObjCreate("InternetExplorer.Application"), I posted it here hoping that someone would recognize that methodology, and then be able to say:

    "Try InternetExplorer64.Appliaction" or something like that.

    My theory is: if we can create an object of the 64 bit instance, it will shellexec the 64 bit IE, and hopefully resolve the problem.

    LVL 7

    Accepted Solution

    Found something interesting that may explain this...

    Launching InternetExplorer.Application x32bit on a x64-bit OS

    This indicates that InternetExplorer.Application WILL be the 64-bit version if launched on a 64-bit OS.  My testing backs this up.  Running the following code on Windows 7 x64 will open up the 64-bit version of Internet Explorer, even though trying to launch IE through Windows defaults to IE 32-bit:
    Set objIE = CreateObject("InternetExplorer.Application")
    objIE.Navigate ""
    objIE.Visible = 1
    Do While objIE.Busy
    	WScript.Sleep 100

    Open in new window

    You can see the screenshot where it shows 64-bit IE being loaded from InternetExplorer.Application.
     64-bit IE from InternetExplorer.Application
    Could this be the problem then?  The 32-bit IE is being loaded and then from inside it KeeForm tries to create a 64-bit InternetExplorer.Application object and causes the browser to hang?

    Wouldn't this mean that you would need a 64-bit version of the KeeForm plugin and to also run it from the 64-bit version of IE for it all to work properly?
    LVL 7

    Assisted Solution

    Using the following code from that previous website link:
    Set WshShell = CreateObject("WScript.Shell")
    WshShell.Run("%windir%\SysWOW64\wscript.exe ""K:\Programming\VBScript\InternetExplorerApplicationFormControls.vbs""")

    Open in new window

    Shows that it works to launch the 32-bit IE from InternetExplorer.Application
    32-bit Google from InternetExplorer.ApplicationKind of a goofy way to make sure it's the 32-bit IE but it may come in handy.

    Unfortunately, it doesn't appear that it would work in any way to help with the KeeForm problem.
    LVL 32

    Author Closing Comment

    Participation points. Nothing here got the problem resolved. I am going with "it's not a bug, it's a feature".

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Free Trending Threat Insights Every Day

    Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

    Batch, VBS, and scripts in general are incredibly useful for repetitive tasks.  Some tasks can take a while to complete and it can be annoying to check back only to discover that your script finished 5 minutes ago.  Some scripts may complete nearly …
    Not long ago I saw a question in the VB Script forum that I thought would not take much time. You can read that question (Question ID  ( Here (http…
    In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…
    This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

    758 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    11 Experts available now in Live!

    Get 1:1 Help Now