Sign in to follow this  
Followers 0
tlman12

IE.au3 and IE8

4 posts in this topic

i guess a recent windows update must have done something to IE8 because now a script that i created to do searches on one of my internal webpages no longer works.

the problems start with _IECreate() it never tells the script the script when the page is done loading so the script stops there. i changed the wait load from a 1 to a 0 and then i get an error with $oForm = _IEFormGetObjByName ($oIE, "Search")

Local $o_col = $o_object.document.forms.item($s_Name)

Local $o_col = $o_object.document^ ERROR

is there something i can do to fix this? like a setting in IE or something?

Share this post


Link to post
Share on other sites



Probably you tried to use the forms collection instantly, before any of the structure was available.

After you set $f_wait = 0, you need _IELoadWait() with a timeout value, or a loop to check status. Even if it doesn't recognize completion, some time delay is required before accessing the DOM elements.

Put _IEErrorHandlerRegister() at the top of your script to get better info on the errors.


Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

Probably you tried to use the forms collection instantly, before any of the structure was available.

After you set $f_wait = 0, you need _IELoadWait() with a timeout value, or a loop to check status. Even if it doesn't recognize completion, some time delay is required before accessing the DOM elements.

Put _IEErrorHandlerRegister() at the top of your script to get better info on the errors.

i did i put a sleep(10000) and still failed

--> IE.au3 V2.4-0 Warning from function _IELoadWait, $_IEStatus_LoadWaitTimeout
--> COM Error Encountered in test.au3
----> $IEComErrorScriptline = 1111
----> $IEComErrorNumberHex = 80010108
----> $IEComErrorNumber = -2147417848
----> $IEComErrorWinDescription = The object invoked has disconnected from its clients.
----> $IEComErrorDescription = 
----> $IEComErrorSource = 
----> $IEComErrorHelpFile = 
----> $IEComErrorHelpContext = 
----> $IEComErrorLastDllError = 0

--> COM Error Encountered in test.au3
----> $IEComErrorScriptline = 1124
----> $IEComErrorNumberHex = 80010108
----> $IEComErrorNumber = -2147417848
----> $IEComErrorWinDescription = The object invoked has disconnected from its clients.
----> $IEComErrorDescription = 
----> $IEComErrorSource = 
----> $IEComErrorHelpFile = 
----> $IEComErrorHelpContext = 
----> $IEComErrorLastDllError = 0

--> IE.au3 V2.4-0 Warning from function _IEFormGetObjByName, $_IEStatus_NoMatch
--> IE.au3 V2.4-0 Error from function _IEFormElementGetCollection, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormElementGetObjByName, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormElementSetValue, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEFormSubmit, $_IEStatus_InvalidDataType
--> COM Error Encountered in test.au3
----> $IEComErrorScriptline = 1852
----> $IEComErrorNumberHex = 80010108
----> $IEComErrorNumber = -2147417848
----> $IEComErrorWinDescription = The object invoked has disconnected from its clients.
----> $IEComErrorDescription = 
----> $IEComErrorSource = 
----> $IEComErrorHelpFile = 
----> $IEComErrorHelpContext = 
----> $IEComErrorLastDllError = 0

--> IE.au3 V2.4-0 Warning from function _IETableGetCollection, $_IEStatus_NoMatch
--> IE.au3 V2.4-0 Error from function _IETableWriteToArray, $_IEStatus_InvalidDataType
--> IE.au3 V2.4-0 Error from function _IEAction, $_IEStatus_InvalidObjectType
Edited by tlman12

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

i did i put a sleep(10000) and still failed

--> IE.au3 V2.4-0 Warning from function _IELoadWait, $_IEStatus_LoadWaitTimeout
--> COM Error Encountered in test.au3
----> $IEComErrorScriptline = 1111
----> $IEComErrorNumberHex = 80010108
----> $IEComErrorNumber = -2147417848
----> $IEComErrorWinDescription = The object invoked has disconnected from its clients.
----> $IEComErrorDescription = 
----> $IEComErrorSource = 
----> $IEComErrorHelpFile = 
----> $IEComErrorHelpContext = 
----> $IEComErrorLastDllError = 0
Well, that's not a good start. What kind of site are you opening with _IECreate()? Does it open another instance of the browser (or another tab)? Can you post a reproducer script?

:D

P.S. What happens if you run _IECreate(), then Sleep(10000), then use _IEAttach() to get the reference to browser? That would overcome a new browser instance being used.

Edited by PsaltyDS

Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0