Func rückgabewert

  • Ich hab hier 2 Hauptfunktionen, eine die das Patching startet und eine die sagt Fertig gepatched.

    Func Patchstarten:

    Spoiler anzeigen
    [autoit]

    Func Patchstatus()
    InetGet("http://www.Keanu-AutoIT.de/RisingGods/wowversion.txt", @TempDir & "\wowversion.txt")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    Switch $versionlocal
    Case "2.3.3.7799"
    Patch1()
    Case "2.4.0.8089"
    Patch2()
    Case "2.4.1.8125"
    Patch3()
    Case "2.4.2.8278"
    Patch4()
    Case "2.4.3.8606"
    Patch5()
    Case "3.0.1.8874"
    Patch6()
    Case "3.0.2.9056"
    Patch7()
    Case "3.2.0.10192"
    Patch8()
    Case "3.2.0.10314"
    Patch9()
    Case "3.2.2.10482"
    Patch10()
    Case "3.2.2.10505"
    Patch11()
    Case "3.3.0.10958"
    Patch12()
    Case "3.3.0.11159"
    Patch13()
    Case "3.3.2.11403"
    Patch14()
    Case "3.3.3.11685"
    Patch15()
    EndSwitch
    EndFunc ;==>Patchstatus

    [/autoit]

    Func Patchbeenden:

    Spoiler anzeigen
    [autoit]

    Func Ende()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    $versionextern = FileRead(@TempDir & "\wowversion.txt")
    if $versionlocal = $versionextern then
    return true
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    else
    return false
    Endif
    Endfunc

    [/autoit]

    Jetzt
    will ich das nach jedem Patch die Funktion Patchbeenden aufgerufen wird, wenn die zutrifft soller nichts mehr machen, als ne msgbox mit fertig zu senden.
    Falls nicht soll er wieder in die Funktion Patchstarten gehen und weiterpatchen. Nach jedem Patch werden beide Funktionen so abgefragt.

    Ein Patch als Beispiel:

    Spoiler anzeigen
    [autoit]

    Func Patch1() ;2.3.3.7799
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 2.3.3.7799 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, $language[4], $language[51])
    logfile("RG WoW Installer: Can't connect to http://www.wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 2.4 - Deutsch (2.3.3.7799 -> 2.4.0.8089) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10037&mirror=1", $wowpath & "Patch 2.4 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10037&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 2.4 - Deutsch (2.3.3.7799 -> 2.4.0.8089)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, $language[4], $language[22])
    ProgressOff()
    MsgBox(-1, $language[4], $language[21])
    logfile("Patch Download: DL NOT succesfull - Patch 2.4 - Deutsch 2.3.3.7799 -> 2.4.0.8089")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 2.4 - Deutsch (2.3.3.7799 -> 2.4.0.8089) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 2.4 - Deutsch.zip", $wowpath & "Patch 2.4 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 2.4 - Deutsch\", "*.exe")
    Run($wowpath & "Patch 2.4 - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    if ende() = true then ; ABFRAGE HIER
    msgbox(0,"","ende")
    else
    Patchstatus()
    EndIf ; ENDE DER ABFRAGE
    Endif
    $Error = 0
    EndIf
    EndFunc ;==>Patch1

    [/autoit]

    Er hört auf jeden Fall auf zu patchen, das heißt er erkennt das die versionen gleich sind. gibt mir aber keine rückgabe raus, also keine msgbox(0,"",fertig")
    dsw denk ich irgendwas stimmt nicht.

    [autoit]

    if ende() = true then ; ABFRAGE HIER
    msgbox(0,"","ende")
    else
    Patchstatus()
    EndIf ; ENDE DER ABFRAGE
    Endif

    [/autoit]

    wird hier die ende func überhaupt aufgerufen?

    Gruß

    Kev

  • also? so?

    [autoit]

    global $var

    [/autoit][autoit]


    Func Ende()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    $versionextern = FileRead(@TempDir & "\wowversion.txt")
    if $versionlocal = $versionextern then
    $var = true
    else
    $var = false
    Endif
    Endfunc

    [/autoit]

    und im patch dann?

    [autoit]

    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    if $var = true then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    else
    Patchstatus()
    EndIf

    [/autoit]

    ?!??!

    Einmal editiert, zuletzt von Kev (26. Mai 2010 um 12:30)

    • Offizieller Beitrag

    Jetzt verstehe ich dein Problem. So wie due es gemacht hast, usst du sicherstellen dass die Ende Funktion auch aufgerufen wird. Nur so könntest du überhaupt $var auswerten. Aber generell würde ich es eher so machen:

    [autoit]

    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    if Ende() = true then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    else
    Patchstatus()
    EndIf

    [/autoit][autoit]

    Func Ende()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    $versionextern = FileRead(@TempDir & "\wowversion.txt")
    if $versionlocal = $versionextern then
    $var = true
    else
    $var = false
    Endif
    return $var
    Endfunc

    [/autoit]
  • du fragst im patch ab

    if Ende() = true

    aber in der Ende()
    hast du ja angegeben $var = true

    stimmt das wirklich so?
    müsste das im patch nicht heißen

    [url='http://translation.autoit.de/onlinehilfe/intro/lang_variables.htm']

    [autoit]

    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    if $var = true then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    else
    Patchstatus()
    EndIf

    [/autoit]

    und $var global deklariern sonst meckert der oda?
    ?

  • Mit

    [autoit]

    if Ende() = true

    [/autoit]


    wird erst die Funktion Ende() aufgerufen, die anschliessend den Rückwert (true / false) generiert, den du durch das if abfragst. Wenn du es wie in deinem letzten Post machen willst, hasste Recht und $var muss Global deklariert werden, aber die Funktion Ende() benötigt dann kein Return mehr da du die Variable ja direkt abfragst, und dann sollteste du es so machen:

    [autoit]

    Ende()
    if $var = true then
    ...

    [/autoit]

    Aber ich würde dir auch empfehlen es so zu machen wie Gun-Food es dir beschrieben hat, ist die 'Elegantere' Wahl :D


    Grüsse!

  • jop und wenn ich gepatched hab un da am ende ein fehler is, darf ich runterpatchen ( ca. halbe stunde ) und 3h neupatchen :D dsw frag ich lieber 10 ma, das ichs net umsonst mach

  • Wenn du es so machst wie Gun-Food es meinte, wird die Funktion Ende() auf jeden fall ausgeführt. Nur stellt sich mir die Frage wie du Patchstatus() aufrufst bzw. wie Patchsatus wieder beendet wird, weil ich bezweifele das die Funktion am ende zum 'Aufrufpunkt' zurückkehren kann... Zur Not solltest du im letzten Patch dafür sorgen, das dein Programm eine andere Funktion startet; so solltest du auf der sicheren Seite sein!

  • ende() wird ja nur ausgeführt wenn die zutrifft, also wenn die versionen gleich sind.
    falls das nicht so ist, ruft der solange die patch funktion auf bis die ende() zutrifft. sollte so gehn

    mach mir net so angst ! :D

    gruß

  • Heyja :)

    Funktioniert Top, eine Frage , eine wichtige Frage, nach jedem Patch öffnet sich eine Launcher.exe die ich auch wieder schließen lasse. Bloß hätte ich das gerne Dauerhaft.
    Wo bau ich das denn am Besten in diesem SCript ein, das wenn der launcher existiert er den schließt. sprich:

    [autoit]

    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")

    [/autoit]


    Spoiler anzeigen
    [autoit]

    ;________________________Func Patch Status_______________________________________________________________________________________________--
    ;###############################################################################################################################################
    Func Patchstatus()
    InetGet("http://www.Keanu-AutoIT.de/RisingGods/wowversion.txt", @TempDir & "\wowversion.txt")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    Switch $versionlocal
    Case "2.3.3.7799"
    Patch1()
    Case "2.4.0.8089"
    Patch2()
    Case "2.4.1.8125"
    Patch3()
    Case "2.4.2.8278"
    Patch4()
    Case "2.4.3.8606"
    Patch5()
    Case "3.0.1.8874"
    Patch6()
    Case "3.0.2.9056"
    Patch7()
    Case "3.2.0.10192"
    Patch8()
    Case "3.2.0.10314"
    Patch9()
    Case "3.2.2.10482"
    Patch10()
    Case "3.2.2.10505"
    Patch11()
    Case "3.3.0.10958"
    Patch12()
    Case "3.3.0.11159"
    Patch13()
    Case "3.3.2.11403"
    Patch14()
    Case "3.3.3.11685"
    Patch15()
    EndSwitch
    EndFunc ;==>Patchstatus

    [/autoit] [autoit][/autoit] [autoit]

    Func Ende()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    $versionextern = FileRead(@TempDir & "\wowversion.txt")
    If $versionlocal = $versionextern Then
    $var = True
    Else
    $var = False
    EndIf
    Return $var
    EndFunc ;==>Ende
    ;____________End of Function - Patch1 - 2.3.3.7799________________________________________________________________________________________________--
    ;###############################################################################################################################################
    ;________________________Func Patch1 - 2.3.3.7799________________________________________________________________________________________________--
    Func Patch1() ;2.3.3.7799
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 2.3.3.7799 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, $language[4], $language[51])
    logfile("RG WoW Installer: Can't connect to http://www.wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 2.4 - Deutsch (2.3.3.7799 -> 2.4.0.8089) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10037&mirror=1", $wowpath & "Patch 2.4 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10037&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 2.4 - Deutsch (2.3.3.7799 -> 2.4.0.8089)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, $language[4], $language[22])
    ProgressOff()
    MsgBox(-1, $language[4], $language[21])
    logfile("Patch Download: DL NOT succesfull - Patch 2.4 - Deutsch 2.3.3.7799 -> 2.4.0.8089")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 2.4 - Deutsch (2.3.3.7799 -> 2.4.0.8089) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 2.4 - Deutsch.zip", $wowpath & "Patch 2.4 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 2.4 - Deutsch\", "*.exe")
    Run($wowpath & "Patch 2.4 - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch1
    ;________________________End of Function - Patch1 - 2.3.3.7799________________________________________________________________________________________________--
    ;###############################################################################################################################################
    ;________________________Func Patch2- 2.4.0.8089____________________________________________________________________________________________________________
    Func Patch2()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 2.4.0.8089 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 2.4.1 - Deutsch (2.4.0.8089 -> 2.4.1.8125) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10035&mirror=1", $wowpath & "Patch 2.4.1 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10035&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 2.4.1 - Deutsch (2.4.0.8089 -> 2.4.1.8125)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull- Patch 2.4.1 - Deutsch 2.4.0.8089 -> 2.4.1.8125")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 2.4.1 - Deutsch (2.4.0.8089 -> 2.4.1.8125) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 2.4.1 - Deutsch (2.4.0.8089 -> 2.4.1.8125) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 2.4.1 - Deutsch.zip", $wowpath & "Patch 2.4.1 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 2.4.1 - Deutsch\", "*.exe")
    Run($wowpath & "Patch 2.4.1 - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch2
    ;________________________End of Function - Patch2 - 2.4.0.8089__________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch3 - 2.4.1.8125________________________________________________________________________________________________
    Func Patch3()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 2.4.1.8125 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 2.4.2 - Deutsch (2.4.1.8125 -> 2.4.2.8278) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10033&mirror=1", $wowpath & "Patch 2.4.2 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10033&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 2.4.2 - Deutsch (2.4.1.8125 -> 2.4.2.8278)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull- Patch 2.4.2 - Deutsch 2.4.1.8125 -> 2.4.2.8278")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 2.4.2 - Deutsch was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 2.4.2 - Deutsch (2.4.1.8125 -> 2.4.2.8278) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    _zip_unzipall($wowpath & "Patch 2.4.2 - Deutsch.zip", $wowpath & "Patch 2.4.2 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 2.4.2 - Deutsch\", "*.exe")
    Run($wowpath & "Patch 2.4.2 - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch3
    ;________________________End of Function - PatchMiD- 2.4.1.8125_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch4 - 2.4.2.8278________________________________________________________________________________________________
    Func Patch4()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 2.4.2.8278 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 2.4.3 - Deutsch (2.4.2.8278 -> 2.4.3.8606) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10031&mirror=1", $wowpath & "Patch 2.4.3 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10031&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 2.4.3 - Deutsch (2.4.2.8278 -> 2.4.3.8606)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull- Patch 2.4.3 - Deutsch 2.4.2.8278 -> 2.4.3.8606")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 2.4.3 - Deutsch (2.4.2.8278 -> 2.4.3.8606) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 2.4.3 - Deutsch (2.4.2.8278 -> 2.4.3.8606) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 2.4.3 - Deutsch.zip", $wowpath & "Patch 2.4.3 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 2.4.3 - Deutsch\", "*.exe")
    Run($wowpath & "Patch 2.4.3 - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch4
    ;________________________End of Function - Patch4 - 2.4.2.8278_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch5 - 2.4.3.8606________________________________________________________________________________________________
    Func Patch5()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 2.4.3.8606 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.0.1 - EU / The Burning Crusade Version (2.4.3 -> 3.0.1) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10029&mirror=1", $wowpath & "Patch 3.0.1 - EU.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10029&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.0.1 - EU / The Burning Crusade Version (2.4.3 -> 3.0.1)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull - Patch 3.0.1 - EU / The Burning Crusade Version 2.4.3 -> 3.0.1")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.0.1 - EU / The Burning Crusade Version (2.4.3 -> 3.0.1) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.0.1 - EU / The Burning Crusade Version (2.4.3 -> 3.0.1) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 3.0.1 - EU.zip", $wowpath & "Patch 3.0.1 - EU", 0)
    $exe = _FileListToArray($wowpath & "Patch 3.0.1 - EU\Updates\WoW-2.4.3-to-3.0.1-TBC-EU-Update\", "*.exe")
    Run($wowpath & "Patch 3.0.1 - EU\Updates\WoW-2.4.3-to-3.0.1-TBC-EU-Update\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch5
    ;________________________End of Function - Patch5 - 2.4.3.8606_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch6 - 3.0.1.8874________________________________________________________________________________________________
    Func Patch6()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.0.1.8874 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.0.2 - EU (3.0.1 -> 3.0.2) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10028&mirror=1", $wowpath & "Patch 3.0.2 - EU.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10028&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.0.2 - EU (3.0.1 -> 3.0.2)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull - Patch 3.0.2 - EU (3.0.1 -> 3.0.2)")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.0.2 - EU (3.0.1 -> 3.0.2) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.0.2 - EU (3.0.1 -> 3.0.2) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 3.0.2 - EU.zip", $wowpath & "Patch 3.0.2 - EU", 0)
    $exe = _FileListToArray($wowpath & "Patch 3.0.2 - EU\Updates\WoW-3.0.1-to-3.0.2-Update\", "*.exe")
    Run($wowpath & "Patch 3.0.2 - EU\Updates\WoW-3.0.1-to-3.0.2-Update\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch6
    ;________________________End of Function - Patch´6 - 3.0.1.8874_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch7 - 3.0.2.9056________________________________________________________________________________________________
    Func Patch7()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.0.2.9056 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.0.2 - EU (3.0.1 -> 3.0.2) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10006&mirror=2", $wowpath & "Patch 3.2 - Full.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10006&mirror=2")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.2 - Full", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull - Patch 3.2 - Full")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.2 - Full was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.2 - Full : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 3.2 - Full.zip", $wowpath & "Patch 3.2 - Full", 0)
    $exe = _FileListToArray($wowpath & "Patch 3.2 - Full\", "*.exe")
    Run($wowpath & "Patch 3.2 - Full\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch7
    ;________________________End of Function - Patch7 - 3.0.2.9056_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch8 - 3.2.0.10192________________________________________________________________________________________________
    Func Patch8()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.2.0.10192 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.2.0a - Deutsch (3.2.0.10192-> 3.2.0.10314) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10026&mirror=1", $wowpath & "Patch 3.2.0a - Deutsch.zip", 1, 1)
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10026&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.2.0a - Deutsch (3.2.0.10192-> 3.2.0.10314)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull- Patch 3.2.0a - Deutsch (3.2.0.10192-> 3.2.0.10314")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.2.0a - Deutsch (3.2.0.10192-> 3.2.0.10314) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.2.0a - Deutsch (3.2.0.10192-> 3.2.0.10314) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 3.2.0a - Deutsch.zip", $wowpath & "Patch 3.2.0a - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 3.2.0a - Deutsch\", "*.exe")
    Run($wowpath & "Patch 3.2.0a - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch8
    ;________________________End of Function - Patch8 - 3.2.0.10192_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch9 - 3.2.0.10314_______________________________________________________________________________________________
    Func Patch9()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.2.0.10314 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.2.2a Deutsch (3.2.2.10482 -> 3.2.2.10505) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10024&mirror=1", $wowpath & "Patch 3.2.2 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10024&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.2.2 - Deutsch (3.2.0.10314 -> 3.2.2.10482)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull - Patch 3.2.2 - Deutsch (3.2.0.10314 -> 3.2.2.10482)")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.2.2 - Deutsch (3.2.0.10314 -> 3.2.2.10482) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.2.2 - Deutsch (3.2.0.10314 -> 3.2.2.10482) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 3.2.2 - Deutsch.zip", $wowpath & "Patch 3.2.2 - Deutsch", 4)
    $exe = _FileListToArray($wowpath & "Patch 3.2.2 - Deutsch\", "*.exe")
    Run($wowpath & "Patch 3.2.2 - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch9
    ;________________________End of Function - Patch9 - 3.2.0.10314_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch10 - 3.2.2.10482_______________________________________________________________________________________________
    Func Patch10()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.2.2.10482 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.2.2a Deutsch (3.2.2.10482 -> 3.2.2.10505) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10022&mirror=1", $wowpath & "Patch 3.2.2a - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10022&mirror=1")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.2.2a Deutsch (3.2.2.10482 -> 3.2.2.10505)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull - Patch 3.2.2a Deutsch (3.2.2.10482 -> 3.2.2.10505) ")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.2.2a Deutsch (3.2.2.10482 -> 3.2.2.10505) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.2.2a Deutsch (3.2.2.10482 -> 3.2.2.10505) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    #RequireAdmin
    _zip_unzipall($wowpath & "Patch 3.2.2a - Deutsch.zip", $wowpath & "Patch 3.2.2a - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 3.2.2a - Deutsch\", "*.exe")
    Run($wowpath & "Patch 3.2.2a - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch10
    ;________________________End of Function - Patch10- 3.2.2.10505_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch11 - 3.2.2.10482_______________________________________________________________________________________________
    Func Patch11()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.2.2.10505 " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.3 - Deutsch (3.2.2.10505 -> 3.3) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10020&mirror=2", $wowpath & "Patch 3.3 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10020&mirror=2")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.3 - Deutsch (3.2.2.10505 -> 3.3)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull- Patch 3.3 - Deutsch (3.2.2.10505 -> 3.3)")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.3 - Deutsch (3.2.2.10505 -> 3.3) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.3 - Deutsch (3.2.2.10505 -> 3.3) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    _zip_unzipall($wowpath & "Patch 3.3 - Deutsch.zip", $wowpath & "Patch 3.3 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "Patch 3.3 - Deutsch\wow-3.2.2-to-3.3.0-deDE-Win-patch", "*.exe")
    Run($wowpath & "Patch 3.3 - Deutsch\wow-3.2.2-to-3.3.0-deDE-Win-patch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch11

    [/autoit] [autoit][/autoit] [autoit]

    ;________________________End of Function - Patch11- 3.3.0.10958_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch12 - 3.3.0.10958_______________________________________________________________________________________________

    [/autoit] [autoit][/autoit] [autoit]

    Func Patch12()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.3.0.10958 - " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "WoW Patch 3.3a - Deutsch (3.3.0.10958-> 3.3.0.11159) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10018&mirror=2", $wowpath & "Patch 3.3a - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10018&mirror=2")
    $Percent = $Size / 100
    ProgressOn("Download of WoW Patch 3.3a - Deutsch (3.3.0.10958-> 3.3.0.11159)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull- WoW Patch 3.3a - Deutsch (3.3.0.10958-> 3.3.0.11159)")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "WoW Patch 3.3a - Deutsch (3.3.0.10958-> 3.3.0.11159) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("WoW Patch 3.3a - Deutsch (3.3.0.10958-> 3.3.0.11159) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    _zip_unzipall($wowpath & "Patch 3.3a - Deutsch.zip", $wowpath & "Patch 3.3a - Deutsch\", 0)
    $exe = _FileListToArray($wowpath & "Patch 3.3a - Deutsch\", "*.exe")
    Run($wowpath & "Patch 3.3a - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch12
    ;________________________End of Function - Patch12- 3.3.0.10958_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch13 - 3.3.2.11403_______________________________________________________________________________________________
    Func Patch13()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.3.0.11159 - " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.3.0.11159 -> 3.3.2.11403 wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10016&mirror=2", $wowpath & "WoW Patch 3.3.2 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10016&mirror=2")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.3.0.11159 -> 3.3.2.11403", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull - Patch 3.3.0.11159 -> 3.3.2.11403")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.3.0.11159 -> 3.3.2.11403 was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.3.0.11159 -> 3.3.2.11403 : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    _zip_unzipall($wowpath & "WoW Patch 3.3.2 - Deutsch.zip", $wowpath & "WoW Patch 3.3.2 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "WoW Patch 3.3.2 - Deutsch\", "*.exe")
    ShellExecute($wowpath & "WoW Patch 3.3.2 - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch13
    ;________________________End of Function - Patch13- 3.3.0.10958_________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch14 - 3.3.2.11403_______________________________________________________________________________________________
    Func Patch14()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.3.2.11403 - " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "WoW Patch 3.3.3 wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10008&mirror=2", $wowpath & "WoW Patch 3.3.3 - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10008&mirror=2")
    $Percent = $Size / 100
    ProgressOn("Download of WoW Patch 3.3.3", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull: WoW Patch 3.3.3")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "WoW Patch 3.3.3 was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("WoW Patch 3.3.3 : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    _zip_unzipall($wowpath & "WoW Patch 3.3.3 - Deutsch.zip", $wowpath & "WoW Patch 3.3.3 - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "WoW Patch 3.3.3 - Deutsch\wow-3.3.2-to-3.3.3-deDE-Win-patch\", "*.exe")
    Run($wowpath & "WoW Patch 3.3.3 - Deutsch\wow-3.3.2-to-3.3.3-deDE-Win-patch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch14
    ;________________________End of Function - Patch14- 3.3.2.11403________________________________________________________________________________
    ;###############################################################################################################################################
    ;________________________Func - Patch15 - 3.3.3.11685_______________________________________________________________________________________________
    Func Patch15()
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    logfile("Starte Patchvorgang : Schleife 3.3.3.11685 - " & "Locale Version: " & $versionlocal)
    Ping("www.wow.4fansites.de")
    If @error Then
    MsgBox(-1, "ERROR", "Can't connect to wow.4fansites.de Server")
    TrayTip("RG WoW Installer", "Fehler - Kann keine Verbindung zu WoW 4 Fansites herstellen.", 5, 1)
    logfile("RG-Starter: Can't connect to wow.4fansites.de - " & @HOUR & ":" & @MIN & ":" & @SEC)
    Else
    $Error = 0
    TrayTip("RG WoW Installer", "Patch 3.3.3a - Deutsch (3.3.3.11685-to-3.3.3.11723) wird runtergeladen...", 5, 1)
    $inetgethandle = InetGet("http://wow.4fansites.de/download.php?download=10064&mirror=2", $wowpath & "WoW Patch 3.3.3a - Deutsch.zip", 1, 1)
    $Size = InetGetSize("http://wow.4fansites.de/download.php?download=10064&mirror=2")
    $Percent = $Size / 100
    ProgressOn("Download of Patch 3.3.3a - Deutsch (3.3.3.11685-to-3.3.3.11723)", "Size = " & $Size & " Bytes", "0%")
    For $i = 0 To 100 Step 1
    While 1
    If InetGetInfo($inetgethandle, 0) >= $Percent * $i - 1 Then
    ProgressSet($i, $i & "%")
    Sleep(100)
    If $i == 100 Then
    ProgressOff()
    EndIf
    ExitLoop
    ElseIf InetGetInfo() == "" Then
    ProgressSet(100, "ERROR", "An Error Occured!!!")
    ProgressOff()
    MsgBox(-1, "ERROR", "An Error Occured!!!")
    logfile("Patch Download: DL NOT succesfull - Patch 3.3.3a - Deutsch (3.3.3.11685-to-3.3.3.11723)")
    $Error = 1
    EndIf
    WEnd
    Next
    If $Error == 0 Then
    TrayTip("RG WoW Installer", "Patch 3.3.3a - Deutsch (3.3.3.11685-to-3.3.3.11723) was downloaded to your WoW Dir.", 5, 1)
    MsgBox(-1, "Succes", "Download Complete!!! -" & $wowpath, 3)
    logfile("Patch 3.3.3a - Deutsch (3.3.3.11685-to-3.3.3.11723) : DL succesfull")
    TrayTip("RG WoW Installer", "Patch wird entpackt und gestartet, bitte haben Sie Geduld", 5, 1)
    _zip_unzipall($wowpath & "WoW Patch 3.3.3a - Deutsch.zip", $wowpath & "WoW Patch 3.3.3a - Deutsch", 0)
    $exe = _FileListToArray($wowpath & "WoW Patch 3.3.3a - Deutsch\", "*.exe")
    Run($wowpath & "WoW Patch 3.3.3a - Deutsch\" & $exe[1])
    WinWait("100% - Blizzard Updater", "Patchvorgang war erfolgreich.")
    ControlClick("100% - Blizzard Updater", "&OK", "Button1")
    Sleep(2000)
    If ProcessExists("launcher.exe") Then ProcessClose("launcher.exe")
    $versionlocal = FileGetVersion($wowpath & "\WoW.exe")
    If Ende() = True Then
    MsgBox(0, "", "Auf Rising Gods Stand gepatcht")
    logfile("Patchstand Rising Gods: " & $versionlocal)
    Else
    Patchstatus()
    EndIf
    EndIf
    $Error = 0
    EndIf
    EndFunc ;==>Patch15

    [/autoit]

    WIe ihr seht, Patch func, patch ende func und die 15 patches, ich will jetz das dauerhaft in den 15 patches abgefragt wird, wenn launcher.exe da ist, mach zu ^^
    ne while schleifer, aber wo b au ich das am besten ein.

    gruß

  • Jup, da hat Name22 recht. Du Packst einfach die Launcher abfrage in eine Funktion und diese wird dann mit Adlibregister alle x ms aufgerufen, egal was dein Script sonst so tut.

    [autoit]


    Func KillLauncher()
    if ProcessExists("launcher.exe") then ProcessClose("launcher.exe")
    EndFunc

    [/autoit]


    Und bevor du das erste mal deine Funktion Patchstatus() aufrufst, mit AdlibRegister("KillLauncher", 50) AU3 erzählen das er alle 50ms die Funktion KillLauncher() aufruft. So sollte es gut klappen! Und nach deinem letzten Patch mit AdlibUnRegister("KillLauncher") die Automatisierung wieder entfernen. :D

    Grüsse!

  • Ich habe selber sonne Funktion in GDI laufen, die wird auch alle 50ms aufgerufen; und mein Super Rechner merkt rein gar nichts davon :D Und das obwohl Grafiken und Sound gleichzeitg laufen, im Script.