Quantcast
Channel: AutoIt v3 - General Help and Support
Viewing all articles
Browse latest Browse all 12506

how to run 2 seperate err functions with a script

$
0
0
How do I manage 2 seperate ErrorMsg handlers and in the same script? do I just use one and call from IE and SQL? Or I have to reg and unreg after each use?

SQL Function

_SQL_RegisterErrorHandler()
Global $oADODB = _SQL_Startup()
If $oADODB = $SQL_ERROR then LOGDATA($LEVEL, "ETSSO MANAGER DEBUG",_SQL_GetErrMsg()&@CRLF)
If _SQL_Connect($oADODB,$SQLSvr,"",$sqladm,$sqlpwd) = $SQL_ERROR then
  HideLogonprogress()
  MsgBox(4096,"Logon Failure","Either the instance name or the credentials are incorrect.")
  LOGDATA($LEVEL, "ETSSO MANAGER DEBUG","authentication Failure, or incorrectly defined SQL Server.")
  GUISetState(@SW_SHOW,$loggui)
  Return
Else
  Local $saveinfochk = GUICtrlRead($SaveInfo)
  Global $XylocSetting= GUICtrlRead($XylocInfo)
  If $saveinfochk=1 Then
   $serverinstance=GUICtrlRead($SQLSvrdata)
   IniWrite(@ScriptDir&"\Data\Settings.ini","Server Settings","Name",$serverinstance)
   $serveradmin=GUICtrlRead($SQLadmdata)
   IniWrite(@ScriptDir&"\Data\Settings.ini","Server Settings","Admin",$serveradmin)
   $serveradminpwd=GUICtrlRead($sqlpwddata)
   IniWrite(@ScriptDir&"\Data\Settings.ini","Server Settings","Pwd",_Base64Encode($serveradminpwd))
   LOGDATA($LEVEL, "ETSSO MANAGER DEBUG","Saving Credential Data in ../Data/Settings.ini.")
  Else
   IniWrite(@ScriptDir&"\Data\Settings.ini","Server Settings","Name","")
   IniWrite(@ScriptDir&"\Data\Settings.ini","Server Settings","Admin","")
   IniWrite(@ScriptDir&"\Data\Settings.ini","Server Settings","Pwd","")
   LOGDATA($LEVEL, "ETSSO MANAGER DEBUG", "Clearing ini settings in ../Data/Settings.ini." & $LEVEL)
  EndIf
  _SQL_UnRegisterErrorHandler()
  _SQL_Close()
EndIf


IE Functions

Func StartApp()
_SQL_UnRegisterErrorHandler()
_IEErrorHandlerRegister("_ErrFunc")
Global $oErrorHandler = ObjEvent("AutoIt.Error", "_ErrFunc")
;ConsoleWrite(GUICtrlRead($AppType1)&@CRLF)
If GUICtrlRead($AppType) = "Internet Explorer" then
  Global $oIEEvents = ObjEvent($oIE, "_IEEvent_", "DWebBrowserEvents2")
  Global $oInputs = _IETagNameGetCollection($oIE, "input")
  For $oInput In $oInputs
   ;ConsoleWrite($oInput.name&@CRLF)
	GUICtrlSetData($logontitle,_IEPropertyGet($oIE,"title"))
	GUICtrlSetData($LAppPath,_IEPropertyGet($oIE,"locationurl"))
	GUICtrlSetData($logonctrl, $oInput.name,"") ; add other item
	GUICtrlSetData($pwdctrl, $oInput.name,"") ; add other item
	GUICtrlSetData($submitctrl, $oInput.name,"") ; add other item
   Next
EndIf
EndFunc


Func ShowLogonCtrl()
_SQL_UnRegisterErrorHandler()
_IEErrorHandlerRegister("_ErrFunc")
$o_form = _IEFormGetCollection($oIE,0)
$n_Forms = @extended
;ConsoleWrite("Forms Found:"&$n_Forms&@CRLF)
$o_Elements = _IEFormElementGetCollection($o_form,0)
$n_Elements = @extended
;ConsoleWrite("Elements Found:"&$n_Elements&@CRLF)
Local $oInputs = _IETagNameGetCollection($oIE, "input")
For $oInput In $oInputs
If $oInput.name = GUICtrlRead($logonctrl,1) Then
  Global $iScreenX = _IEPropertyGet($oInput, "screenx")
  Global $iScreenY = _IEPropertyGet($oInput, "screeny")
  Local $iBrowserX = _IEPropertyGet($oInput, "browserx")
  Local $iBrowserY = _IEPropertyGet($oInput, "browserY")
  Global $iWidth = _IEPropertyGet($oInput, "width")
  Global $iHeight = _IEPropertyGet($oInput, "height")
  ConsoleWrite("X:"&$iScreenX&@CRLF&"Y:"&$iScreenY&@CRLF&"W:"&$iWidth&@CRLF&"H:"&$iHeight)
  ToolTip("Logon Control",$iScreenX,$iScreenY,"","")
  sleep(3000)
  ToolTip("")
  EndIf
Next
WinActivate(GUICtrlRead($logontitle,1))
Return
EndFunc


Viewing all articles
Browse latest Browse all 12506

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>