Wenn etwas falsch ist in der Funktion dann beenden

  • Hi,
    Ich habe ien funktion

    Spoiler anzeigen
    [autoit]

    Func _speichern()
    $m = GUICtrlRead ( $Combo1)
    If $m = "Herunterfahren" then
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Computer", "1","1" )
    ElseIf $m = "Energie sparen" then
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Computer", "2","8" )
    ElseIf $m = "Neustarten" Then
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Computer", "2","8" )
    Else
    MsgBox ( 64, "Error", "Wähle bitte etwas aus der Liste aus!")
    Endif
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "1", GUICtrlRead($p1))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "2", GUICtrlRead($p2))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "3", GUICtrlRead($p3))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "4", GUICtrlRead($p4))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "5", GUICtrlRead($p5))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "1", GUICtrlRead($h1))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "2", GUICtrlRead($h2))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "3", GUICtrlRead($h3))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "4", GUICtrlRead($h4))
    IniWrite(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "5", GUICtrlRead($h5))

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

    $i1 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "1", "0")
    GUICtrlSetData($p1, $i1)
    $i2 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "2", "0")
    GUICtrlSetData($p2, $i2)
    $i3 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "3", "0")
    GUICtrlSetData($p3, $i3)
    $i4 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "4", "0")
    GUICtrlSetData($p4, $i4)
    $i5 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Verzeichnis", "5", "0")
    GUICtrlSetData($p5, $i5)
    $i6 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "1", "0")
    GUICtrlSetData($h1, $i6)
    $i7 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "2", "0")
    GUICtrlSetData($h2, $i7)
    $i8 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "3", "0")
    GUICtrlSetData($h3, $i8)
    $i9 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "4", "0")
    GUICtrlSetData($h4, $i9)
    $i10 = IniRead(@ScriptDir & "\Files\Klasse.ini", "Hotkeys", "5", "0")
    GUICtrlSetData($h5, $i10)
    EndFunc ;==>_speichern

    [/autoit]


    Und wenn bei der if abfrage die msg box war und man dann auf ok klick dann soll die funktion beendet werden.
    Wie soll man das machen?? mit endfuc geht es nciht

  • mit

    [autoit]

    Return

    [/autoit]


    raus aus der Funktion evtl noch einen Wert dabei mit übergeben und mit

    [autoit]

    Exit

    [/autoit]


    raus aus dem Gesamtprogramm

    Achtung Anfänger! :whistling:

    Betrachten des Quellcodes auf eigene Gefahr, bei Übelkeit,Erbrechen,Kopfschmerzen übernehme ich keine Haftung. 8o

  • Das geht mit

    Code
    Return

    . Dann kannst du sogar noch einen Rückgabewert definieren.

    Edit: Ups, Dietmar und peethebee waren schneller ^^

  • Hi,
    Nimm einfach Return. Dann wird in die Zeile nach dem Funktionsaufruf zurückgesprungen.

    ;-))
    Stefan
    P.S: Dein angehängter Code passt irgendwie nicht mit Deinem geschildertem Problem zusammen. Schau Dir ebenfalls die Return Codes der Msgbox Funktion in der Hilfe an ->
    $btn = Msgbox (...)
    if $btn <> 1 Then
    Return
    else
    .....
    endif

  • Danke.
    Kann man eigentlich auch ein Bild in die exe einfügen?? Also das mann kein fileistall braucht sondern das bild im Programm ist??