For-Schleife und Progressbar

  • Hallo.

    Spoiler anzeigen
    [autoit]

    #include
    #include

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Status", 345, 89, 193, 125)
    $Progress1 = GUICtrlCreateProgress(8, 64, 326, 17)
    GUICtrlSetLimit(-1, 4590, 0)
    $Label1 = GUICtrlCreateLabel("Bitte Warten - Die IP-Adressen werde überprüft", 8, 40, 327, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Button1 = GUICtrlCreateButton("Starten!", 8, 8, 331, 25, 0)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    ; Benötigte Textdateien erstellen
    If Not _FileCreate("erfolgreich.txt") Then
    EndIf
    If Not _FileCreate("fehlgeschlagen.txt") Then
    EndIf

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

    $erfolgreich = FileOpen("erfolgreich.txt", 2)
    $fehlgeschlagen = FileOpen("fehlgeschlagen.txt", 2)
    For $bereich = 1 To 18
    For $adresse = 1 To 255
    If Ping("xx.xxx."&$bereich&"."&$adresse,2) Then
    FileWriteLine($erfolgreich, "Online: xx.xxx."&$bereich&"."&$adresse&@CRLF)
    Else
    FileWriteLine($fehlgeschlagen, "Offline: xx.xxx."&$bereich&"."&$adresse&@CRLF)
    EndIf
    GUICtrlSetData($Progress1, 1)
    Next
    Next
    MsgBox(0, "Erfolgreich!", "Es wurden alle IPs erfolgreich überprüft!")
    ExitLoop
    EndSwitch
    WEnd

    [/autoit]

    Das ist mein Skript, mit welchem ich alle IP-Adressen in unserer Firma anpingen lasse.
    NAch der 2. For-Schleife soll sich die Progressbar um 1 erhöhen, wie mache ich das?
    Im Moment erhöht sich der Wert nur einmal.

    LG und Danke

    LG

    Philip

    Einmal editiert, zuletzt von n00b-it (4. August 2011 um 11:11)

    • Offizieller Beitrag
    Spoiler anzeigen
    [autoit]

    #Region - Timestamp
    ; 2011-07-01 11:04:18
    #EndRegion

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

    #include <File.au3>
    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Status", 345, 89, 193, 125)
    $Progress1 = GUICtrlCreateProgress(8, 64, 326, 17)
    GUICtrlSetLimit(-1, 4590, 0)
    $Label1 = GUICtrlCreateLabel("Bitte Warten - Die IP-Adressen werde überprüft", 8, 40, 327, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Button1 = GUICtrlCreateButton("Starten!", 8, 8, 331, 25, 0)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    ; Benötigte Textdateien erstellen
    If Not _FileCreate("erfolgreich.txt") Then
    EndIf
    If Not _FileCreate("fehlgeschlagen.txt") Then
    EndIf

    $erfolgreich = FileOpen("erfolgreich.txt", 2)
    $fehlgeschlagen = FileOpen("fehlgeschlagen.txt", 2)
    For $bereich = 1 To 18
    For $adresse = 1 To 255
    If Ping("192.168."&$bereich&"."&$adresse,2) Then
    ConsoleWrite( "xx.xxx."&$bereich&"."&$adresse& @CRLF)
    FileWriteLine($erfolgreich, "Online: xx.xxx."&$bereich&"."&$adresse&@CRLF)
    Else
    FileWriteLine($fehlgeschlagen, "Offline: xx.xxx."&$bereich&"."&$adresse&@CRLF)
    EndIf
    GUICtrlSetData($Progress1,($Bereich*$adresse)/(18*255)*100)
    Next
    Next
    MsgBox(0, "Erfolgreich!", "Es wurden alle IPs erfolgreich überprüft!")
    ExitLoop
    EndSwitch
    WEnd

    [/autoit]


    Simple Prozentrechnung führt zum Erfolg.