Download geschwindichkeit in Kbits/s berechnen

  • Moin ich will die Downloadgeschwindichkeit in Kbits/s ausrechnen für meinen downloader.

    Jetz fehlt mir da schon das elementare grundwissen..

    wie berechnet man überhaupr die geschwindichkeit (Kein fertig script nur die tehorie das ich selber drauf kommen kan wie das script dafür aussehen muss)

    Bis jetz bin ich irgendwie auf die idee gekommen bei start des downloads einen timer laufen zu lassen der dan imer pro sekunde den immer die bytes mist und dan in Kbytes umrechnet.

    wäre das so ungefähr richtig?

  • Ja, genau...
    v=s/t
    Geschwindigkeit=Weg(Größe)/Zeit
    Testskript:

    [autoit]


    $stamp=TimerInit()
    InetGet("http://blabla.com/datei.rar")
    Sleep(10000)
    $bytes=@InetGetBytesRead
    $time=Timerdiff($stamp)
    $bpms=$bytes/$time
    $kbps=$bpms/1024
    Msgbox(0,"Speed",$kbps)

    [/autoit]


    /edit: es scheint nicht hinzuhauen, denkfehler, edited..

    Twitter: @L3viathan2142
    Benutze AutoIt persönlich nicht mehr, da ich keinen Windows-Rechner mehr besitze.

  • Bis jetz bin ich irgendwie auf die idee gekommen bei start des downloads einen timer laufen zu lassen der dan imer pro sekunde den immer die bytes mist und dan in Kbytes umrechnet.Ob

    Ob es sinnvoll ist, jede Sekunde zu aktualisieren, dürfte umstritten sein, aber das Prinzip ist schon korrekt: Geladene (K)Bytes geteilt durch benötigte Zeit.

    Gruß Ashpool

    Gruß Ashpool

    Zitat von mir

    Bin immer wieder erstaunt, wie begrenzt ein Horizont sein kann.

  • In der Hilfe steht doch alles drin ...

    [autoit]

    ; Advanced example - downloading in the background
    InetGet("http://www.nowhere.com/somelargefile.exe", "test.exe", 1, 1)

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

    While @InetGetActive
    ; Angepasst ...
    TrayTip("Downloading", "Bytes = " & @InetGetBytesRead/8*1024, 10, 16)
    Sleep(250)
    Wend

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


    LG
    Greenhorn


  • @L3viathan2142

    Danke für das script aber nich böse sein wenn ich sebst auch eins schreibe und deins benutze um die kunltion zu verstehen.

    Denfehler mh ich hab es noch nicht probiert^^^^

    @Ashpool warum ist ds nicht sinnvol ich will ja die aktuelle geschwindichkeit ?

  • Vielleicht so:

    [autoit]

    InetGet("http://download.mozilla.org/?product=firefox-3.0.6&os=win&lang=de", "test.exe", 1, 1)

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

    While @InetGetActive

    $1 = @InetGetBytesRead / 1024
    Sleep(1000)
    $2 = @InetGetBytesRead / 1024

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

    TrayTip("Downloading", $2 - $1, 10, 16)

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

    WEnd

    [/autoit]
  • Es geht um den Sekundenintervall. Er meint du solltest nur 100 ms oder so hernehmen

    Ashpool warum ist ds nicht sinnvol ich will ja die aktuelle geschwindichkeit ?

    Greenhorn

    Nein stimmt nicht das sript sagt nicht die aktuelle download geschwindichkeit

    Siehste, genau das meinte ich ^^

    Mit welchem Timerwert ist denn deine Downloadspeed-Anzeige aktuell? Und welche Aussagekraft hat denn eine solche Anzeige?
    Denk mal drüber nach.

    Gruß Ashpool

    Gruß Ashpool

    Zitat von mir

    Bin immer wieder erstaunt, wie begrenzt ein Horizont sein kann.

  • Sorry, die Operatoren vertauscht ... :whistling:

    Richtig, mein Beispiel hat lediglich die Kbits angezeigt, die aktuell heruntergeladen wurden, aber der Rest ist doch bloß Rechensache ...
    (Naja, gut. Auch nicht so meine Stärke :rolleyes: )

    [autoit]


    $iFileSize = InetGetSize ('http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe')

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

    ; Advanced example - downloading in the background
    InetGet("http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe", @DesktopDir&"\autoit-v3-setup.exe", 1, 1)

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

    ProgressOn ('Test', '')

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

    While @InetGetActive
    $iLastKbits = ((@InetGetBytesRead*8)/1024)
    Sleep (100)
    $iNewKbits = ((@InetGetBytesRead*8)/1024)
    $iPercent = Int ((@InetGetBytesRead / $iFileSize) * 100)
    ProgressSet ($iPercent, StringFormat ('%50s',($iNewKbits - $iLastKbits)*10 &' Kbit/s'))
    Wend

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

    ProgressOff ( )

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

    LG
    Greenhorn


    Einmal editiert, zuletzt von Greenhorn (25. Februar 2009 um 22:33)

  • Danke für eure hilfe es funktioniert super^^^

    Was mich aber zu rnächsten frage bring die verblibene Download zeit in sekunden?

    Da muss ich wirklich passen keinen blassen schimmer schon rein physikalisch... nach den ferien wohl besser in physik aufpassen

    Und so sie mein downloadteil des scriptes aus

    [autoit]

    ProgressOn("","")
    While @InetGetActive
    $Percentage = @InetGetBytesRead * 100 / $FileSize
    $Prozent = Round($Percentage, 0); Umrechnung der datei von bytes in MB
    $R = $FileSize /1048576;
    $Grose= Round($R, 2);
    $R2 = @InetGetBytesRead /1048576
    $Down= Round($R2, 2)
    $iLastKbits = ((@InetGetBytesRead)/1024)
    Sleep (100)
    $iNewKbits = ((@InetGetBytesRead)/1024)
    $KB =($iNewKbits - $iLastKbits)*10
    ProgressSet($Percentage, & $Prozent "% (" & $Down & " MB" & " von " & $Grose & " MB Gedwonloaded)" & @CRLF & "Download Speed: "& $KB & "KB\s" ,"Downloade von " & GUICtrlRead($Dateiname) & " zu " & $Prozent & "% Fertig")
    Wend
    ProgressOff()
    MsgBox(64, "Download Fertig","Download ist vollständig und fertig",5)
    _LOG("Log.txt","Der Battlefront II Updater hat das Update runtergeladen")

    [/autoit]
  • Hi,

    bist du sicher, dass du Kbit/s willst Matthias_199? Damit kann man eigentlich nix anfangen, ich habs jetzt mal in Kb/s gemacht, weil du in deinem Script oben drüber mit Mb/s rechnest.

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>

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

    Global $averagearr[1], $buffer = 0

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

    $speedaktual = 2
    ; $speedaktual = 1

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

    $url = "http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe"

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

    Global $iFileSize = InetGetSize($url)
    InetGet($url, @DesktopDir & "\autoit-v3-setup.exe", 1, 1)

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

    ProgressOn('Test', '')

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

    $time = TimerInit()
    While @InetGetActive
    $iLastKbits = @InetGetBytesRead / 1024
    Sleep($speedaktual * 100)
    $iNewKbits = @InetGetBytesRead / 1024
    $speed = ($iNewKbits - $iLastKbits) / ($speedaktual / 10)

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

    $iPercent = Round(@InetGetBytesRead / $iFileSize * 100)
    ProgressSet($iPercent, " Noch " & _average($speed) & " sec ; " & ' ' & $speed & ' Kb/s')
    WEnd

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

    ProgressOff()

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

    Func _average($a)
    If $a <> 0 Then
    _ArrayAdd($averagearr, $a)
    For $i = 1 To UBound($averagearr) - 1
    $buffer += $averagearr[$i]
    Next
    $buffer /= UBound($averagearr) - 1
    $buffer2 = $buffer
    $buffer = 0
    Return Round((($iFileSize - @InetGetBytesRead) / 1024) / $buffer2)
    EndIf
    EndFunc ;==>_average

    [/autoit]


    PS. nochwas: Das hat mit Physik nix zu tun :D.

    //Unnötige Klammern entfernt.
    //Ich will nicht wissen, wie oft ich die Datei jetzt schon runtergeladen hab :D.

    anno2008 8)

    5 Mal editiert, zuletzt von anno2008 (26. Februar 2009 um 02:39)

  • Zitat von Matthias_199

    Download geschwindichkeit in Kbits/s berechnen

    Zwischen KiloByte und KiloBit ist ein Unterschied, das hat mich etwas verwirrt.
    Ob dein Script Funktioniert weis ich nicht, ich weis nur das meins klappt :D.

    Die verbleibende Zeit hab ich auch ausgerechnet... (2 Posts obendrüber).

    anno2008 8)

  • Spoiler anzeigen
    [autoit]

    #include <Array.au3>

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

    Global $averagearr[1], $buffer = 0

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

    $speedaktual = 2
    ; $speedaktual = 1

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

    $url = "http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe"

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

    Global $iFileSize = InetGetSize($url)
    InetGet($url, @DesktopDir & "\autoit-v3-setup.exe", 1, 1)

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

    ProgressOn('Test', '')

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

    $time = TimerInit()
    While @InetGetActive
    $iLastKbits = @InetGetBytesRead / 1024
    Sleep($speedaktual * 100)
    $iNewKbits = @InetGetBytesRead / 1024
    $speed = ($iNewKbits - $iLastKbits) / ($speedaktual / 10)

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

    $iPercent = Round(@InetGetBytesRead / $iFileSize * 100)
    ProgressSet($iPercent, " Noch " & _average($speed) _ ; <-- hier übergabeparameter
    & " sec ; " & ' ' & $speed & ' Kb/s')
    WEnd

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

    ProgressOff()

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

    Func _average($a) ; average (eng.) = durchschnitt
    If $a <> 0 Then ; wenn der Übergabeparameter $a (= geschwindigkeit) <> 0 ist, dann
    _ArrayAdd($averagearr, $a) ; aktuelle Geschwindigkeit wird in ein Array geschrieben
    For $i = 1 To UBound($averagearr) - 1
    $buffer += $averagearr[$i] ; alle Werte im Array werden zueinander addiert
    Next
    $buffer /= UBound($averagearr) - 1 ; Durchschnitt der Addierten Werte wird ausgerechnet
    $buffer2 = $buffer ; <-- könnte man vielleicht schöner machen, $buffer muss vorm return geleert werden, deshalb $buffer2
    $buffer = 0 ; wie gesagt, buffer muss geleert werden ...
    Return Round((($iFileSize - @InetGetBytesRead) / 1024) / $buffer2) ; die Formel lautet: v = kb/s , also s = kb/v
    ; die kb sind die noch verbleibenden Kbyte.
    ; Die Geschwindigkeit ist schon ausgerechnet (Durchschnitt)
    EndIf
    EndFunc ;==>_average

    [/autoit]

    Ich weis nicht ob das jetzt sehr verständlich erklärt ist, viel besser bekomm ich es nicht hin :).
    Das sieht jetzt vielleicht sehr mathematisch aus, ist aber im Prinzip nicht schwer.

    anno 2008 8)

  • Phu Geschaft...

    Stunden minuten und sekunden und damit ihr das script versteht poste ich alles.

    Ich will mcih noch mal bedanken den ich weiß ich bin anstregend und drücke mich nicht immer richtig aus^^^^

    [autoit]

    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.2.10.0
    Author: Matthias Reisenauer TG 11/3 (2009)
    Script Function:
    Battlefront II Updater

    #ce ----------------------------------------------------------------------------
    #include <GUIConstants.au3>
    #include <file.au3>
    #include <_LOG.au3>
    #include <Inet.au3>
    #include <Array.au3>
    $IP = _GetIP()
    _LOG("Log.txt","==================== Start des Battlefront II Updaters mit der IP: " & $IP & " ====================")
    Opt("GUIOnEventMode", 1)
    #Region START GUI
    $Form1 = GUICreate("Battlefront II Updater", 412, 595, 273, 128)
    GUISetBkColor(0x000000)
    GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close")
    GUISetOnEvent($GUI_EVENT_MINIMIZE, "Form1Minimize")
    GUISetOnEvent($GUI_EVENT_MAXIMIZE, "Form1Maximize")
    GUISetOnEvent($GUI_EVENT_RESTORE, "Form1Restore")
    $Passwort = GUICtrlCreateInput("Passwort", 96, 144, 229, 20, -1)
    $PSC = ("Dark_2009")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "PasswortChange")
    GUICtrlSetCursor (-1, 5)
    $Dateiname = GUICtrlCreateInput("Dateiname", 96, 207, 229, 20, -1)
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "DateinameChange")
    GUICtrlSetCursor (-1, 5)
    $Speicher_Pfad = GUICtrlCreateInput("C:\Battlefront_II_Update\", 16, 264, 373, 21, -1)
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Speicher_PfadChange")
    GUICtrlSetCursor (-1, 5)
    $Install_Passwort = GUICtrlCreateInput("Installations Passwort", 98, 359, 229, 21, -1)
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Install_PasswortChange")
    GUICtrlSetCursor (-1, 5)
    $Install_Pfad = GUICtrlCreateInput("C:\Programme\LucasArts\Star Wars Battlefront II\GameData\", 18, 416, 373, 21, -1)
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Install_PfadChange")
    GUICtrlSetCursor (-1, 5)
    $Button1 = GUICtrlCreateButton("Starten", 112, 560, 75, 25, 0)
    GUICtrlSetBkColor(-1, 0x00FF00)
    GUICtrlSetOnEvent(-1, "Button1Click")
    $Button2 = GUICtrlCreateButton("Ausschalten", 248, 560, 75, 25, 0)
    GUICtrlSetBkColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Button2Click")
    $Text8 = GUICtrlCreateLabel("Nichts", 200, 480, 41, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text8Click")
    $Text9 = GUICtrlCreateLabel("Schließen", 200, 504, 92, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text9Click")
    $Text10 = GUICtrlCreateLabel("Herunterfahren", 200, 528, 92, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text10Click")
    $Text7 = GUICtrlCreateLabel("Was soll passieren wenn der Prozess abgeschlossen ist?", 40, 456, 347, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text7Click")
    $Headder = GUICtrlCreatePic("DATA\Bilder\Head_Bild.jpg", 16, 0, 380, 108)
    GUICtrlSetOnEvent(-1, "HeadderClick")
    $Text1 = GUICtrlCreateLabel("Passwort für die Programm Benutzung", 96, 120, 229, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text1Click")
    $Text2 = GUICtrlCreateLabel("Datei Name des Updates", 96, 184, 229, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text2Click")
    $Text3 = GUICtrlCreateLabel("Speicherpfad des Updates", 96, 241, 229, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text3Click")
    $Text4 = GUICtrlCreateLabel("Automatische Installation?", 146, 311, 158, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text4Click")
    $Text5 = GUICtrlCreateLabel("Passwort der Installer Datei", 98, 336, 166, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text5Click")
    $Text6 = GUICtrlCreateLabel("Installations Pfad des Updates", 98, 393, 186, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xFF0000)
    GUICtrlSetOnEvent(-1, "Text6Click")
    $Radio1 = GUICtrlCreateRadio("Radio1", 184, 480, 17, 17)
    GUICtrlSetOnEvent(-1, "Radio1Click")
    GUICtrlSetCursor (-1, 0)
    $Radio2 = GUICtrlCreateRadio("Radio2", 184, 504, 17, 17)
    GUICtrlSetOnEvent(-1, "Radio2Click")
    GUICtrlSetCursor (-1, 0)
    $Radio3 = GUICtrlCreateRadio("Radio3", 184, 528, 17, 17)
    GUICtrlSetOnEvent(-1, "Radio3Click")
    GUICtrlSetCursor (-1, 0)
    $Checkbox1 = GUICtrlCreateCheckbox("", 128, 312, 13, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlSetOnEvent(-1, "Checkbox1Click")
    GUICtrlSetCursor (-1, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    While 1 ;Nichts zu bearbeiten
    Sleep(100)
    WEnd
    Func Button1Click() ;Halb Fertig
    If GUICtrlRead($Passwort) = $PSC Then
    $Programmpruefung = MsgBox(64, "Passwort Check", "Das Passwort ist Richtig! Drücke OK oder es geht in 5 Sekunden automatisch weiter ",5)
    _LOG("Log.txt","Passwort wurde richtig eingegeben")
    If $Programmpruefung = 1 or -1 Then
    _LOG("Log.txt","Die Verbindung zum Server wird überprüft")
    MsgBox(64, "Verbindungs Ceck", "Es wird überprüft ob eine verbindung zum Update Server besteht. Drücke OK oder es geht in 5 Sekunden automatisch weiter ",5)
    $ping1 = Ping("dark.bellerophontes.eu",1000) ;Verbindungstest zum Update Server
    _LOG("Log.txt","Ping 1 mit "& $ping1 & "ms")
    Sleep(500)
    $ping2 = Ping("dark.bellerophontes.eu",1000) ;Verbindungstest zum Update Server
    _LOG("Log.txt","Ping 2 mit "& $ping2 & "ms")
    Sleep(500)
    $ping3 = Ping("dark.bellerophontes.eu",1000) ;Verbindungstest zum Update Server
    _LOG("Log.txt","Ping 3 mit "& $ping3 & "ms")
    Sleep(500)
    $ping4 = Ping("dark.bellerophontes.eu",1000) ;Verbindungstest zum Update Server
    _LOG("Log.txt","Ping 4 mit "& $ping4 & "ms")
    If $ping1 And $ping2 And $ping3 And $ping4 > 0 Then
    $Ping_all_1 = (($ping1 + $ping2 + $ping3 + $ping4)/4)
    $Ping_all_2= Round($Ping_all_1, 0)
    Msgbox(64,"Verbindung Hergestellt","Eine Verbindung zum Update Server konnte hergestellt werden, beginne mit dem Download. PING: " & $Ping_all_2,5)
    _LOG("Log.txt","Verbindung Hergestellt. Druschschnitlicher Ping "& $Ping_all_2 & "ms")
    $FileURL = "http://dark.bellerophontes.eu/homepage/Map_Updates/" & GUICtrlRead($Dateiname)
    Global $FileSize = InetGetSize($FileURL)
    DirCreate(GUICtrlRead($Speicher_Pfad)) ;Erstellt den Pfad der eingegeben wurde
    InetGet($FileURL,GUICtrlRead($Speicher_Pfad) & GUICtrlRead($Dateiname),0,1)
    $P = $FileSize
    If $P = 0 Then
    _LOG("Log.txt","Die Datei konnte nicht gefunden werden")
    Msgbox(0,"Download Fehler","Die Datei: """&GUICtrlRead($Dateiname)&""" Konnte nicht gefunden werden. Überprüfe den Dateinamen", 10)
    Else
    Global $averagearr[1], $buffer = 0
    $R3 = $FileSize/1048576
    $File = Round($R3, 2)
    _LOG("Log.txt","Datei gefunden. Beginne Download von """ &GUICtrlRead($Dateiname)& """ mit der Größe von "&$File& " MB")
    ProgressOn("","")
    $time = TimerInit()
    While @InetGetActive
    $Percentage = @InetGetBytesRead * 100 / $FileSize
    $Prozent = Round($Percentage, 0); Umrechnung der datei von bytes in MB
    $R = $FileSize /1048576;
    $Grose= Round($R, 2);
    $R2 = @InetGetBytesRead /1048576
    $Down= Round($R2, 2)
    $iLastKbits = ((@InetGetBytesRead)/1024)
    Sleep (100)
    $iNewKbits = ((@InetGetBytesRead)/1024)
    $KB =($iNewKbits - $iLastKbits)*10
    Global $ZEIT = _average($KB)
    $MIN = $ZEIT/60
    $Minuten = Round($MIN, 0)
    $STD = $Min/60
    $Stunden = Round($STD, 0)
    $Sekunden = (($Zeit +30) - ($Minuten*60))
    If $Minuten > 0 Then
    $Sekunden = (($Zeit +30) - ($Minuten*60))
    ElseIf $ZEIT < 0 Then
    $Sekunden = (($Zeit) - ($Minuten*60))
    EndIf
    ProgressSet($Percentage, & $Prozent "% (" & $Down & " MB" & " von " & $Grose & " MB Gedwonloaded)" & @CRLF & "Download Speed: "& $KB & "KB\s" &@CRLF& "Geschätzte Downloadzeit: "&$Stunden& " Stunden und " & $Minuten&" Minuten " &$Sekunden ,"Download von " & GUICtrlRead($Dateiname) & " zu " & $Prozent & "% Fertig")
    Wend
    ProgressOff()


    MsgBox(64, "Download Fertig","Download ist vollständig und fertig",5)
    _LOG("Log.txt","Der Battlefront II Updater hat das Update runtergeladen in das Verzeichnis: "&GUICtrlRead($Speicher_Pfad))

    If GUICtrlRead($Checkbox1) = 1 Then ; Entpacken
    _LOG("Log.txt","Der Battlefront II Updater beginnt nun mit dem entpacken des Updates, mit dem Passwort: "&GUICtrlRead($Install_Passwort))
    Msgbox(64,"Entpacken...","Entpacken wird nun gestartet",5)
    $DPfad = StringFormat("%s%s ",GUICtrlRead($Speicher_Pfad) ,GUICtrlRead($Dateiname))
    $EPasswort = GUICtrlRead($Install_Passwort)
    $EPfad = GUICtrlRead($Install_Pfad)
    DirCreate ($EPfad)
    $Befehl = StringFormat("x -o+ -p%s %s %s %s ",$EPasswort ,$DPfad ,$EPfad)
    RunWait("Data\Unrar\Unrar.exe " & $Befehl)
    Msgbox(64,"Entpacken...","Entpacken abgeschlossen",5)
    _LOG("Log.txt","Der Battlefront II Updater hat das entpacken abgeschlossen. Das Verzeichnis lautet: "&GUICtrlRead($Install_Pfad))
    If GUICtrlRead($Radio1) = 1 Then
    EndIf

    If GUICtrlRead($Radio2) = 1 Then
    _LOG("Log.txt","==================== Das Programm beendet sich ====================")
    Msgbox(64,"Programm Beenden","Der PC wird das Programm beenden",5)
    Exit
    EndIf

    If GUICtrlRead($Radio3) = 1 Then
    _LOG("Log.txt","Das Programm beendet sich und fährt den PC runter")
    Msgbox(64,"Herunterfahren","==================== Der PC wird Heruntergefahren ====================",5)
    RunWait(@ComSpec & " /c " & "shutdown -s -t 10 ")
    Exit
    EndIf
    Else
    If GUICtrlRead($Radio1) = 1 Then
    EndIf

    If GUICtrlRead($Radio2) = 1 Then
    _LOG("Log.txt","==================== Das Programm beendet sich ====================")
    Msgbox(64,"Programm Beenden","Der PC wird das Programm beenden",5)
    Exit
    EndIf

    If GUICtrlRead($Radio3) = 1 Then
    Msgbox(64,"Herunterfahren","Der PC wird Heruntergefahren",5)
    _LOG("Log.txt","==================== Das Programm beendet sich und fährt den PC runter ====================")
    RunWait(@ComSpec & " /c " & "shutdown -s -t 10 ")
    Exit
    EndIf
    EndIf
    EndIf
    Else
    _LOG("Log.txt","Der Battlefront II Updater konnte keine Verbindung mit dem Update Server herstellen, probier es später noch einmal")
    Msgbox(0,"Keine Verbindung","Es konnte keine Verbindung Hergestellt werden. Probiere es später", 10)
    EndIf


    Else ;!!!Fertig!!! Programm Fehler
    _LOG("==================== Log.txt","Kritischer Programm Fehler. Das Programm beendet sich ====================")
    Msgbox(0,"Programm Fehler","Programm Fehler. Beende Programm sofort",5)
    Exit
    Endif
    Else ;!!!Fertig!!! Falsches Passwort
    _LOG("Log.txt","Das Passwort wurde Falsch eingegeben")
    MsgBox(16, "Passwort Check", "Das Passwort ist Flasch! Überprüfe das Passwort für die Programm Benutzung",5)
    EndIf
    EndFunc
    Func _average($a)
    If $a <> 0 Then
    _ArrayAdd($averagearr, $a)
    For $i = 1 To UBound($averagearr) - 1
    $buffer += $averagearr[$i]
    Next
    $buffer /= UBound($averagearr) - 1
    $buffer2 = $buffer
    Return Round((($FileSize - @InetGetBytesRead) / 1024) / $buffer2)
    EndIf
    EndFunc

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

    Func Button2Click() ;!!!Fertig!!! Programm Abschalten
    MsgBox(64, "Programm Abschaltung", "Das Programm schaltet sich in 5 Sekunden ab", 5)
    _LOG("Log.txt","==================== Der Battlefront II Updater wurde über den Ausschaltknopf beendet ==================== ")
    Exit
    EndFunc
    Func Checkbox1Click() ;Nichts zu bearbeiten
    EndFunc
    Func DateinameChange() ;Nichts zu bearbeiten
    EndFunc
    Func Form1Close() ;Fertig
    _LOG("Log.txt","==================== Der Battlefront II Updater wurde über die Close Funktion beendet ==================== ")
    Exit
    EndFunc
    Func Form1Maximize() ;Nichts zu bearbeiten
    LOG("Log.txt","Der Battlefront II Updater wurde Maximiert")
    EndFunc
    Func Form1Minimize() ;Nichts zu bearbeiten
    _LOG("Log.txt","Der Battlefront II Updater wurde Minimiert")
    EndFunc
    Func Form1Restore() ;Nichts zu bearbeiten
    _LOG("Log.txt","Der Battlefront II Updater wurde Maximiert")
    EndFunc
    Func HeadderClick() ;Nichts zu bearbeiten
    EndFunc
    Func Install_PasswortChange() ;Nichts zu bearbeiten
    EndFunc
    Func Install_PfadChange() ;Nichts zu bearbeiten
    EndFunc
    Func PasswortChange() ;Nichts zu bearbeiten
    EndFunc
    Func Radio1Click() ;Nichts zu bearbeiten
    EndFunc
    Func Radio2Click() ;Nichts zu bearbeiten
    EndFunc
    Func Radio3Click() ;Nichts zu bearbeiten
    EndFunc
    Func Speicher_PfadChange() ;Nichts zu bearbeiten
    EndFunc
    Func Text10Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text1Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text2Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text3Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text4Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text5Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text6Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text7Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text8Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text9Click() ;Nichts zu bearbeiten
    EndFunc

    [/autoit]
  • Was genau machst du damit:

    Spoiler anzeigen
    [autoit]


    Func Form1Maximize() ;Nichts zu bearbeiten
    LOG("Log.txt","Der Battlefront II Updater wurde Maximiert")
    EndFunc
    Func Form1Minimize() ;Nichts zu bearbeiten
    _LOG("Log.txt","Der Battlefront II Updater wurde Minimiert")
    EndFunc
    Func Form1Restore() ;Nichts zu bearbeiten
    _LOG("Log.txt","Der Battlefront II Updater wurde Maximiert")
    EndFunc
    Func HeadderClick() ;Nichts zu bearbeiten
    EndFunc
    Func Install_PasswortChange() ;Nichts zu bearbeiten
    EndFunc
    Func Install_PfadChange() ;Nichts zu bearbeiten
    EndFunc
    Func PasswortChange() ;Nichts zu bearbeiten
    EndFunc
    Func Radio1Click() ;Nichts zu bearbeiten
    EndFunc
    Func Radio2Click() ;Nichts zu bearbeiten
    EndFunc
    Func Radio3Click() ;Nichts zu bearbeiten
    EndFunc
    Func Speicher_PfadChange() ;Nichts zu bearbeiten
    EndFunc
    Func Text10Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text1Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text2Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text3Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text4Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text5Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text6Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text7Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text8Click() ;Nichts zu bearbeiten
    EndFunc
    Func Text9Click() ;Nichts zu bearbeiten
    EndFunc

    [/autoit]

    Padmak

  • [autoit]

    Func Form1Maximize() ;Nichts zu bearbeiten
    LOG("Log.txt","Der Battlefront II Updater wurde Maximiert")
    EndFunc
    Func Form1Minimize() ;Nichts zu bearbeiten
    _LOG("Log.txt","Der Battlefront II Updater wurde Minimiert")
    EndFunc
    Func Form1Restore() ;Nichts zu bearbeiten
    _LOG("Log.txt","Der Battlefront II Updater wurde Maximiert")

    [/autoit]

    Das wird alle mit _Log gelogt und mein Rest das hat Koda generiert und habe es dan so gelassen wenn ich es lösche gibt es nur faxen