Hilfe 2 Func ?

  • Hi,

    nach Ende einer ausgeführten Funktion, soll an einer Stelle eine Msgbox eine Rückmeldung ausgeben bzw. an einer anderen Stelle eine weitere Funktion ausgeführt werden.

    Bei mir starten beide schnell. Besonders fatal, da an der zweiten Stelle ein Shutdown die noch nicht abgeschlossene Funktion abbricht.

    Meine ersten Versuche mit Func, bitte um Nachsicht. Die Hilfe und das Forum waren für mich nicht schlüssig ?
    Was ist falsch und was muss ich ändern, was könnte ich mir hierzu ansehen ?

    Spoiler anzeigen
    [autoit]


    While 1
    $nMsg = GUIGetMsg()
    If $nMsg <> 0 Then
    $Sichern = GUICtrlRead($rb_Sichern)
    Select
    Case $nMsg = $bn_OK
    If $Sichern = 1 Then
    $_Userwahlsich = MsgBox(32+4, " Sichern", "Es wurde sichern gewählt, " & @CRLF & " ...wollen Sie fortfahren ? ")
    If $_Userwahlsich = 7 Then
    MsgBox(48, " Sichern", " ...es wurden noch keine Daten gesichert ! ")
    Exit
    EndIf
    ; starten _SichernFunc1
    _SichernFunc1()
    MsgBox(0, " Sichern", " Sicherung abgeschlossen ! ") ;<== MSGBOX startet schnell ?
    Exit
    Else
    $_Userwahlout = MsgBox(32+4, " nach Sichern den PC ausschalten", "Es wurde sichern und ausschalten gewählt, " & @CRLF & " ...wollen Sie fortfahren ? ")
    If $_Userwahlout = 7 Then
    MsgBox(48, " nach Sichern den PC ausschalten", " ...es wurden noch keine Daten gesichert ! ")
    Exit
    EndIf
    ; starten _SichernFunc1
    _SichernFunc1()
    ; starten _SichernAusFunc2
    _SichernAusFunc2() ; <== Shutdown unterbricht die sichern Funktion ?
    EndIf
    Case $nMsg = $GUI_EVENT_CLOSE Or $nMsg = $bn_Close
    Exit
    ExitLoop
    Case $nMsg = $bn_Hinweis
    MsgBox(64, "Wichtiger Hinweis !", "- Hinweistext" )
    EndSelect
    EndIf

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

    WEnd

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

    ; _SichernFunc1
    Func _SichernFunc1()
    Run("RDsys/7za.exe u -tzip D:\Backup\EigeneDateien.zip ""C:\Eigene Dateien""")
    EndFunc

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

    ; _SichernAusFunc2
    Func _SichernAusFunc2()
    Shutdown(9) ; Herunterunterfahren mit Stromabschaltung
    EndFunc

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


    Schönes WE und
    Danke
    Euer Ritzelrocker04

  • hi,

    @ritzelrocker04: das gehört jetzt vllt nicht so ganz zum thema aber kannst du mir erklären was das shutdown(9) also das stromabschalten bewirk?

    was würde passieren wenn man nur shutdown( 8 ) schreiben würde?

    udn wird der strom nach dem abschalten auch wieder angeschaltet? ;)

  • Hi Mignon grüß Dich,

    der Grundgedanke ist eine unbeaufsichtigte Datensicherung mit anschliessendem Ausschalten des Computers.
    Wer sichert schon gerne, also warum nicht automatisieren ?
    Nun zu Deiner Frage:

    Spoiler anzeigen


    Quelle: AutoIT-Hilfe-de Version 3.10

    Bemerkungen

    Der Herunterfahr-Code ist eine Kombination der folgenden Werte:
    0 = Abmelden / Logoff
    1 = Herunterfahren / Shutdown
    2 = Neu Starten / Reboot
    4 = Herunterfahren erzwingen / Force
    8 = Strom abschalten / Power down
    32= Suspend
    64= Schlafmodus / Hibernate

    Addiere die benötigten Werte auf. Zum Herunterunterfahren mit Stromabschaltung wäre, z.B. der Wert 9 zu setzen.

    Standby oder Hibernate werden ignoriert, wenn andere Werte gesetzt werden. Ebenso werden sie unter Win9x ignoriert.


    Gruß
    Euer Ritzelrocker04

  • jo thx erstmal^^

    wenn ich nun strom abschalte....wird der dann auch wieder eingeschaltet? oder hat man dann wie wieder strom? ;)

  • Hallo Mignon,

    ja beim erneuten Einschalten gibts auch wieder Strom.

    Das ganze Skript und auch eine kleine Avi-Datei sowie ein Hinweistext liegen in Skripte>RD Daten sichern (RD = Running Disk).Er kann es sich ja mal ansehen und seine Meinung abgeben, würde mich interessieren !

    PS: Sein Avatar kommt jetzt ja noch besser zur Geltung - cool.

    MfG
    Euer Ritzelrocker04