Neustart mit auto it Wichtige frage!

  • Ich hab jetzt mal hinter jedem case die : weggemacht jetzt führt der das script schonmal aus bloß er fängt immer wieder bei case 1 an also er startet die installation 5 mal oder so bis ich dann stopp mache? aber er macht dann nicht mit case 2 normal weiter so?

  • Hi!

    Spoiler anzeigen
    [autoit]


    $file = FileOpen("wieweitsinddieinstallationen.txt", 0)
    $nummer = FileReadLine($file,1)
    FileClose($file)
    While $nummer <> 5
    $nummer += 1
    $file = FileOpen("wieweitsinddieinstallationen.txt", 2)
    FileWriteLine($file,$nummer)
    FileClose($file)
    If $nummer = 1 Then
    _install1()
    ElseIf $nummer = 2 Then
    _install2()
    ElseIf $nummer = 3 Then
    _install3()
    Else
    _install4()
    EndIf
    WEnd
    FileDelete("wieweitsinddieinstallationen.txt")

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

    Func _install1()
    run("T:\UpdateDVD28092009\Auto\WindowsXP\Winfuture3.16XPSP3-14102009\WinFuture_WinXPsp3_UpdatePack_3.16_Oktober-2009-Vollversion.exe")
    blockinput(1)
    winwait ("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)")
    sleep(4000)
    controlclick("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "Weiter" , "TButton4" )
    sleep(2000)
    controlclick("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "Ich stimme zu" , "TRadioButton2" )
    sleep(2000)
    controlclick("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "Weiter" , "TButton3" )
    sleep(2000)
    controlclick("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "Automatisch" , "TRadioButton2" )
    sleep (1000)
    controlclick("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "Weiter" , "TButton3" )
    sleep (500)
    WinSetTitle("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "" , "Installation123")
    winwait ("Neu starten")
    blockinput (0)
    controlclick ("Neu starten" , "Jetzt neu starten" , "TButton1") ;genau hier!!
    sleep (1000)
    EndFunc
    Func _install2()
    blockinput(1)
    WinWaitclose("Installation123"); keine Ahnung ob man diese Zeile dann noch braucht
    sleep (2000)
    controlclick("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "Jetzt nicht neu starten", "TCheckBox1" )
    sleep (1000)
    controlclick("WinFuture Update Pack für Windows XP SP3 (Oktober 2009)", "Beenden" , "TButton2" )
    blockinput (0)
    EndFunc
    Func _install3()
    ;.........Programm3
    EndFunc
    Func _install4()
    ;.........Programm4
    EndFunc

    [/autoit]

    If not :?: then ?( else :thumbup:

    2 Mal editiert, zuletzt von Concara (19. Oktober 2009 um 11:30)

  • Hi!

    Ja wenn du alle Programmteile integriert hast die du brauchst.
    Dann als exe compilieren und entweder eine Verknüpfung in den Autostart oder du kopierst die Exe direkt in den Autostartordner.

    If not :?: then ?( else :thumbup:

    Einmal editiert, zuletzt von Concara (19. Oktober 2009 um 11:08)

  • Mh das funktioniert nicht ich glaub in dem script fehlen die befehle um dann am ende von func install musst du ja dann die 2 in die txt datei schreiben wieweitistdeineinstallation weil er nach dem neustart wieder mit func install 1 anfängt ? da fehlt doch bestimmt der befehl das er dann die 2in die Zeile schreibt nach func install 1?

  • Hi!

    Sorry! Ich hab das Script geändert.
    Die 3 Zeilen gehören an eine andere Position im Script.
    Änderung siehe Post von vorher.

    Im nicht funktionierenden Script ist er nie zum Schreiben der Zahl in die Datei gekommen.
    Weil davor das Script schon durch den Neustart unterbrochen wurde.
    Mit der Änderung sollte es funktionieren.
    Du musst nur achten das nach einer Neustartaufvorderung ein genügend langes Sleep gesetzt ist.
    Denn wenn das Autoitscript auf den Neustart geklickt hat dann würde es sofort mit der nächsten installation weitermachen.
    Das Script wird sicher schneller abgearbeitet als dein PC herunterfahren kann.

    [autoit]


    $file = FileOpen("wieweitsinddieinstallationen.txt", 2)
    FileWriteLine($file,$nummer)
    FileClose($file)

    [/autoit]

    If not :?: then ?( else :thumbup:

  • Hallo,

    eine frage noch ... geht das auch mit über 32 Programmen ?

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    While $nummer <> 32
    $file = FileOpen("wieweitsinddieinstallationen.txt", 2)
    FileWriteLine($file,$nummer)
    FileClose($file)

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

    While $nummer <> 32
    $nummer += 1
    $file = FileOpen("wieweitsinddieinstallationen.txt", 2)
    FileWriteLine($file,$nummer)
    FileClose($file)
    If $nummer = 1 Then
    _install1()
    ElseIf $nummer = 2 Then
    _install2()
    ElseIf $nummer = 3 Then
    _install3()
    ElseIf $nummer = 4 then
    _install4()
    elseIf $nummer = 5 Then
    _install5()
    elseIf $nummer = 6 Then
    _install6()
    ; uns so weiter bis
    elseIf $nummer = 32
    _install32()
    EndIf
    WEnd
    FileDelete("wieweitsinddieinstallationen.txt")

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

    kann ich das jetzt mit elseIf so weiter machen bis ich beim ende bin ( Prog. 32 ) oder geht das nicht ...
    Nero 10 erwartet nämlich einen Neustart nachdem es wichtige Sachen vorweg installiert. Was alles jetzt einen Neustart benötigt weiß ich noch nicht, sonst setzt ich es zum schluss rein.

    Würde mich freuen wenn ich das soweit richtig verstanden habe und es so tun könnte. Alles soll nach einer Neuinstallation installiert werden aber manuell,
    also nicht direkt über die Installations DVD mit runonce.

  • [autoit]


    If Not FileExists('install.ini') Then
    IniWrite("install.ini", "installation", "step", "1")
    EndIf ; sollte die install.ini nicht vorhanden sein > erstellen und auf Wert 1 Setzen
    Global $iniStep = IniRead("install.ini", "installation", "step","")
    Global $progEXE = "T:\UpdateDVD28092009\Auto\WindowsXP\Winfuture3.16XPSP3-14102009\WinFuture_WinXPsp3_UpdatePack_3.16_Oktober-2009-Vollversion.exe"
    Global $progTITLE = "WinFuture Update Pack für Windows XP SP3 (Oktober 2009)"

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

    _installProg1() ; Funktion aufrufen
    while 1
    Sleep(10)
    WEnd

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

    Func _installProg1()
    If $iniStep = 1 Then
    blockinput(1)
    Run($progEXE)
    winwait ($progTITLE)
    sleep(4000)
    controlclick($progTITLE, "Weiter" , "TButton4" )
    sleep(2000)
    controlclick($progTITLE , "TRadioButton2" )
    sleep(2000)
    controlclick($progTITLE, "Automatisch" , "TRadioButton2" )
    sleep (1000)
    controlclick($progTITLE, "Weiter" , "TButton3" )
    sleep (500)
    WinSetTitle($progTITLE, "" , "Installation123")
    winwait ("Neu starten")
    controlclick ("Neu starten" , "Jetzt neu starten" , "TButton1")
    BlockInput(0)
    WinWaitclose("Installation123") ; was auch immer dass sein soll?
    Else
    BlockInput(1)
    ; jetzt kommt der neustart odeer was? wieso wird 2 mal gefragt nach einem Neustart verstehe ich nicht?
    sleep (2000)
    controlclick($progTITLE, "Jetzt nicht neu starten", "TCheckBox1" )
    sleep (1000)
    controlclick($progTITLE, "Beenden" , "TButton2" )
    blockinput (0)

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

    EndFunc

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

    also an sich ist das Sript schon nicht sehr gut aufgebaut aber wie auch immer habe mal was draus gebaut , bin mir aber nicht sicher wo genau der neustart nun ist einfach korrigieren und gut ist ;)

    Gruß Marvin

  • Schau mal auf das Threadatum ich glaub nicht, dass das heute noch gebraucht wird ;).

    Chicago ja geht.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

    Einmal editiert, zuletzt von chip (24. November 2011 um 10:15)