#Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_icon=D:\ICONS\dibaclean.ico #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** #cs ---------------------------------------------------------------------------- ;Standardskript für das ausführen von einer A-Seite Liegt auch im Autostart. Ruft die A-Seite auf. wartet auf eine Fehlerseite und ruft dann A-Seite erneut auf. Folgende Funktionen sind definiert: Preloadcheck: Vor dem Startvorgang wird gewartet, bis die Userinit beendet wird und es wird geprüft, ob eine Setup ausgeführt wird Errorcheck: Es wird geprüft, ob eine vordefinierte Fehlermeldung erscheint Login: Es wird mit den jeweiligen User sich in den A-Seite eingeloggt Loginwinwait: Es wird gewartet bis das Fenter zum Eingeben der Login-Informationen erscheint Blockuser: Die Eingabe mit Maus und Tastatur werden blockiert http://www.xxxxxxxx.de ;Sciptname: A_Support_Sript.au3 ;Script wird eingesetzt auf: ;Letzte Aktualisierung: 15.10.2010 ;Verfasser: #ce Opt("wintitlematchmode", 3) ;------------------------------------------------------------------------------------------------------------------------------------------------------------------------- $url= "-k http://www.xxxxxxxx.de" $wintitle1 = "Verbindung herstellen mit a" $explorerdir = "C:\Programme\Internet Explorer\IEXPLORE.EXE" $splashuserinit = @ScriptDir & "\splashscreen_userinit.bmp" $splashsetup = @ScriptDir & "\splashscreen_setup.bmp" $splashsetupexe = @ScriptDir & "\splashscreen_setupexe.bmp" ;Feste Variablen $error1 = "Error - Microsoft Internet Explorer bereitgestellt von ING-DiBa AG" ;Fehlertext in Deutsch $error2 = "Server nicht gefunden - Microsoft Internet Explorer bereitgestellt von ING-DiBa AG" ;Fehlertext in Deutsch ;-------------------Preloadcheck ausführen-------------------------------------------------------------------------------------------------------------------------------------------------------------------- preloadcheck() ;-------------------Bericht 1 Starten------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ;run($explorerdir) ;Sleep(10000);wartet 10 Sekunden Login() ;Warten bis das Login-Fenster vorhanden ist loginwinwait() ;Mauszeiger nach rechts unten ziehen, damit man ihn nicht mehr sieht MouseMove(1300, 1300) ;Suche nach Fehlermeldungen Errorcheck() ;~ ;-------------------Schleife für Eingabeblockade und Windows Update-Überprüfung ausführen--------------------------------------------------------------------------------------------------------------------------- Func Winupdatecheck() If WinExists("Automatische Updates") Then MsgBox(0, "Neustarten", "Der PC wird wegen automatischen Updates jetzt neu gestartet", 10) Run(@ComSpec & " /c " & 'C:\Programme\Scripts\taskkill.cmd', "", @SW_HIDE) blockuser(5000) Shutdown(6) EndIf EndFunc ;-------------------Funktionen------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Func blockuser($a) $counter = TimerInit() While $a > TimerDiff($counter) Sleep(50) BlockInput(1) WEnd EndFunc Func preloadcheck() SplashImageOn("Userinit", $splashuserinit) While ProcessExists ("userinit.exe") blockuser(10) WEnd ;warte bis die Userinitialisierung abgeschlossen ist SplashOff() SplashImageOn("Wait Setup", $splashsetup) blockuser(60000) ;warte 60 Sekunden SplashOff() SplashImageOn("Setup", $splashsetupexe) While ProcessExists("setup.exe") ;Überprüfe ob ein Setup ausgeführt ist und warte bis dieses zu Ende ist blockuser(100) WEnd SplashOff() EndFunc Func Login() ShellExecute($explorerdir, $url) Sleep(5000);wartet 5 Sekunden blockuser(5000) ;If WinExists($wintitle1,"") Then WinWait($wintitle1,"") WinActivate($wintitle1,"") WinWaitActive($wintitle1,"") Sleep(5000);wartet 5 Sekunden Send("a_user{tab}a_user_pw{Enter}") ;EndIf EndFunc Func loginwinwait() Do blockuser(500) Until WinExists($wintitle1, $error1) OR WinExists($wintitle1, $error2) EndFunc Func Errorcheck() while 1=1 ; Schleife ; wenn eine Fehlerseite kommt, starte den IE neu. Sonst: warte 10 Sekunden und schau noch mal If WinExists($error1,"") or WinExists ($error2,"") then; warte auf die Fehlerseiten des IE RunWait(@ComSpec & " /c " & 'taskkill.exe /F /T /IM iexplore.exe', "", @SW_HIDE) ; kill den IE blockuser(3000) Login() Else blockuser(5000) ; warte 10 Sekunden Winupdatecheck() EndIf WEnd EndFunc