ValeryVal Posted December 27, 2011 Posted December 27, 2011 This example uses new function ObjCreateInterface from AutoIt v.3.3.7.23 (beta) and Mozilla Browser ActiveX. The last control is available from http://www.wxperl.co.uk/MozillaControl1712.exe .You can also get it from the control's author at http://www.iol.ie/~locka/mozilla/control.htmThe control may not be currently maintained, the last release being in 2005. You should probably therefore not use it as a general browser.After installation you should register it by regsvr32 utility.expandcollapse popup; ******************************************************* ; Mozilla ActiveX control example ; AutoIt v3.3.7.23 (beta) ++ ; ******************************************************* #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Global Const $sCLSID_MozillaBrowser = "{1339B54C-3453-11D2-93B9-000000000000}" Global Const $sIID_IWebBrowserApp = "{EAB22AC1-30C1-11CF-A7EB-0000C05BAE0B}" Global $Home = "http://www.yahoo.com/" $oMZ = ObjCreateInterface($sCLSID_MozillaBrowser,$sIID_IWebBrowserApp) GUICreate("Mozilla ActiveX Application", 640, 580, (@DesktopWidth - 640) / 2, (@DesktopHeight - 580) / 2, $WS_OVERLAPPEDWINDOW) $GUI_Button_Back = GUICtrlCreateButton("Back", 10, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_Button_Forward = GUICtrlCreateButton("Forward", 100, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_Button_Home = GUICtrlCreateButton("Home", 200, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_Button_Stop = GUICtrlCreateButton("Stop", 300, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $URL_Label = GUICtrlCreateLabel("URL:", 10, 50, 40, 20) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_URL = GUICtrlCreateInput($Home, 50, 50, 480, 20) GUICtrlSetResizing(-1,$GUI_DOCKTOP+$GUI_DOCKLEFT+$GUI_DOCKHEIGHT) $GUI_Button_Go = GUICtrlCreateButton("->", 530, 50, 40, 20) GUICtrlSetResizing(-1,$GUI_DOCKTOP+$GUI_DOCKHEIGHT) $GUIActiveX = GUICtrlCreateObj($oMZ, 10, 80, 620, 450) GUICtrlSetResizing($GUIActiveX,$GUI_DOCKTOP+$GUI_DOCKLEFT) $Status_Label = GUICtrlCreateLabel("Status_Label", 10, 550, 620, 20) $oSink = ObjEvent($oMZ,"MZEvent_") GUISetState() ;Show GUI $oMZ.Visible = True $oMZ.Navigate2($Home) ; Waiting for user to close the window While 1 $msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE $oMZ.Quit() ExitLoop Case $msg = $GUI_Button_Go $oMZ.Navigate2(GuiCtrlRead($GUI_URL)) Case $msg = $GUI_Button_Home $oMZ.GoHome() Case $msg = $GUI_Button_Back $oMZ.GoBack() Case $msg = $GUI_Button_Forward $oMZ.GoForward() Case $msg = $GUI_Button_Stop $oMZ.Stop() EndSelect WEnd Exit Func MZEvent_StatusTextChange($Text) GUICtrlSetData($Status_Label, $Text) EndFunc Func MZEvent_NavigateComplete($URL) GUICtrlSetData($GUI_URL, $URL) EndFuncEnjoy The point of world view
twitchyliquid64 Posted December 27, 2011 Posted December 27, 2011 es incredible! thankee ongoing projects:-firestorm: Largescale P2P Social NetworkCompleted Autoit Programs/Scripts: Variable Pickler | Networked Streaming Audio (in pure autoIT) | firenet p2p web messenger | Proxy Checker | Dynamic Execute() Code Generator | P2P UDF | Graph Theory Proof of Concept - Breadth First search
shaqan Posted December 28, 2011 Posted December 28, 2011 (edited) thanks Edited December 28, 2011 by shaqan
JohnOne Posted December 28, 2011 Posted December 28, 2011 Cheers, been keeping my eye out for examples of ObjCreateInterface() Just a shame you cannot use object installed with current browser AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
ValeryVal Posted December 28, 2011 Author Posted December 28, 2011 This script can save document downloaded as you want: expandcollapse popup; ******************************************************* ; Mozilla ActiveX control example ; AutoIt v3.3.7.23 (beta) ++ ; ******************************************************* #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Global Const $sCLSID_MozillaBrowser = "{1339B54C-3453-11D2-93B9-000000000000}" Global Const $sIID_IWebBrowserApp = "{EAB22AC1-30C1-11CF-A7EB-0000C05BAE0B}" Global $Home = "http://www.yahoo.com/" $oMZ = ObjCreateInterface($sCLSID_MozillaBrowser,$sIID_IWebBrowserApp) GUICreate("Mozilla ActiveX Application", 640, 580, (@DesktopWidth - 640) / 2, (@DesktopHeight - 580) / 2, $WS_OVERLAPPEDWINDOW) $GUI_Button_Back = GUICtrlCreateButton("Back", 10, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_Button_Forward = GUICtrlCreateButton("Forward", 100, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_Button_Home = GUICtrlCreateButton("Home", 200, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_Button_Stop = GUICtrlCreateButton("Stop", 300, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_Button_SaveAs = GUICtrlCreateButton("SaveAs", 400, 10, 90, 30) GUICtrlSetResizing(-1,$GUI_DOCKALL) $URL_Label = GUICtrlCreateLabel("URL:", 10, 50, 40, 20) GUICtrlSetResizing(-1,$GUI_DOCKALL) $GUI_URL = GUICtrlCreateInput($Home, 50, 50, 480, 20) GUICtrlSetResizing(-1,$GUI_DOCKTOP+$GUI_DOCKLEFT+$GUI_DOCKHEIGHT) $GUI_Button_Go = GUICtrlCreateButton("->", 530, 50, 40, 20) GUICtrlSetResizing(-1,$GUI_DOCKTOP+$GUI_DOCKHEIGHT) $GUIActiveX = GUICtrlCreateObj($oMZ, 10, 80, 620, 450) GUICtrlSetResizing($GUIActiveX,$GUI_DOCKTOP+$GUI_DOCKLEFT) $Status_Label = GUICtrlCreateLabel("Status_Label", 10, 550, 620, 20) $oSink = ObjEvent($oMZ,"MZEvent_") GUISetState() ;Show GUI $oMZ.Visible = True $oMZ.Navigate2($Home) ; Waiting for user to close the window While 1 $msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE $oMZ.Quit() ExitLoop Case $msg = $GUI_Button_Go $oMZ.Navigate2(GuiCtrlRead($GUI_URL)) Case $msg = $GUI_Button_Home $oMZ.GoHome() Case $msg = $GUI_Button_Back $oMZ.GoBack() Case $msg = $GUI_Button_Forward $oMZ.GoForward() Case $msg = $GUI_Button_Stop $oMZ.Stop() Case $msg = $GUI_Button_SaveAs $oMZ.ExecWB(4,0) EndSelect WEnd Exit Func MZEvent_StatusTextChange($Text) GUICtrlSetData($Status_Label, $Text) EndFunc Func MZEvent_NavigateComplete($URL) GUICtrlSetData($GUI_URL, $URL) EndFunc Just a shame you cannot use object installed with current browserIE's very stodgy for me. The point of world view
JohnOne Posted December 28, 2011 Posted December 28, 2011 IE is great, just wishing on a star that ObjCreateInterface() might have had ability to employ current and up to date mozilla or chrome browser objects.Just my lack of savvy I suppose. AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now