Sign in to follow this  
Followers 0
Armand

Obj- Shell.Explorer.2 - Crush! [SOLVED]

4 posts in this topic

#1 ·  Posted (edited)

helo there :P

anyhow that's the second time i'm writing about it and i'd really be happy to have some concrete solution ;)

as my code is over 6000 lines combined i cannot post it here however i will post a "demo" of my script with all of the regarding lines included (hopfully!).

Edit-> i've managed to reproduce the crush with only but a few lines:

#include <GUIConstants.au3>;Needed.
GUICreate("",900,700)
$MyBrowseringOBJ = ObjCreate("Shell.Explorer.2"); Create Internet Explorer application
$MyBrowseringOBJEvent = ObjEvent($MyBrowseringOBJ, "IEEvent_", "DWebBrowserEvents2")
$MyBrowseringOBJ_ctrl = GUICtrlCreateObj($MyBrowseringOBJ, 4, 62, 817, 625)
GUICtrlSetResizing(-1, $GUI_DOCKAUTO)
$MyBrowseringOBJ.RegisterAsBrowser = 1
$oMyError = ObjEvent("AutoIt.Error", "MyErrFunc"); Initialize a COM error handler
GUISetState()

$MyBrowseringOBJ.navigate ("www.google.com")
MsgBox(0,"INSTRUCTIONS:","just right click on a link and choose: 'open in new window'!")
While 1
    
WEnd

Func MyErrFunc();Error Handler - so that users won't see the autoit errors...
    $HexNumber = Hex($oMyError.number, 8)
    ConsoleWrite("###  We intercepted a COM Error :" & $HexNumber & @CRLF & @CRLF & _
            "err.description is: " & @TAB & $oMyError.description & @CRLF & _
            "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _
            "err.number is: " & @TAB & Hex($oMyError.number, 8) & @CRLF & _
            "err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _
            "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _
            "err.source is: " & @TAB & $oMyError.source & @CRLF & _
            "err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _
            "err.helpcontext is: " & @TAB & $oMyError.helpcontext & @CRLF _
            )
EndFunc

Any help provided will be much appreciated !

--->EDIT:

after a hell lot of testing {not atm but also before...}, i've realized that if i remove the following line it works OK!

$MyBrowseringOBJEvent = ObjEvent($MyBrowseringOBJ, "IEEvent_", "DWebBrowserEvents2")

any alternative for that line ? any idea on how to have it implemented in my script and yet have my script not crushing ?!

THANKS IN ADVANCE !

Edited by Armand

[u]My Au3 Scripts:[/u]____________(E)Lephant, A Share download manager (RS/MU etc)Http1.1 Console, The Ez Way!Internet Reconnection Automation Suite & A Macro Recording Tool.SK's Alarm Clock, Playing '.MP3 & .Wav' Files._________________Is GOD a mistake of the Humanity Or the Humanity is a mistake of GOD ?!

Share this post


Link to post
Share on other sites



Use IE UDF and you won't have any problem.

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

ohhh, even with IE idf i get the error if i'm using that line mentioned...

-->EDIT:

I'm on to it !!!!!!

just don't use the event: 'DWebBrowserEvents2', use 'DWebBrowserEvents' instead !!!

$MyBrowseringOBJEvent = ObjEvent($MyBrowseringOBJ, "IEEvent_", "DWebBrowserEvents")

works like a charm !!!

Edited by Armand

[u]My Au3 Scripts:[/u]____________(E)Lephant, A Share download manager (RS/MU etc)Http1.1 Console, The Ez Way!Internet Reconnection Automation Suite & A Macro Recording Tool.SK's Alarm Clock, Playing '.MP3 & .Wav' Files._________________Is GOD a mistake of the Humanity Or the Humanity is a mistake of GOD ?!

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