Grundsätzlicher Programmaufbau

  • Hallo zusammen,

    ist das Abarbeiten von Nutzerfunktionen richtig im Programmaufbau eingefügt?
    Wie frägt man den Erfolg ab, wenn die erste Funktion erfolgreich gelaufen ist.
    Aus der Hilfe konnte ich entnehmen, dass eine Nutzerfunktion 0 zurückgibt und ein anderer Return kann auch definiert werden.
    Wie schaut so eine Returndefinition bei Nichterfolg einer Nutzerfunktion aus?

    z.B.

    #include <File.au3>
    #include <Array.au3>

    $pfad = ""

    _Movetxtfile()
    _Movexlsfile()
    _Movedocfile()

    Func _Movetxtfile()
    EndFunc
    Func _Movexlsfile()
    EndFunc
    Func _Movedocfile()
    EndFunc

    Vielen Dank.

    Bis bald
    leertaste

    Einmal editiert, zuletzt von leertaste (10. Dezember 2007 um 19:59)

  • Verallgemeinern kann man das nicht, aber zb eine funktion:

    [autoit]

    Func _check($zahl)

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

    if $zahl > 10 Then

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

    Return 1

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

    else

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

    Return 0

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

    Endif

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

    Endfunc
    ; Aufruf
    _check(1) ; gibt 0 zurück
    _check(11); gibt 1 zurück

    [/autoit]

    ps: im tutorial ist das beschrieben X(

  • Also, bei manuellen Funktionen musst du dann "Return 1" schreiben, dann gibt sie 1 zurück.
    Du kannst sie natürlich auch 2 zurückgeben lassen, jenachdem was die Funktion festgestellt hat.

    Du musst die Funktion praktisch in eine Variable binden,
    also Beispielsweise

    Spoiler anzeigen
    [autoit]


    $wert1 = Fileexists("c:\programme")
    If $wert1 = 1 Then
    msgbox(0,"Besteht","Der Ordner c:\programme besteht!")
    Else
    msgbox(0,"Besteht nicht","Der Ordner c:\programme besteht nicht!")
    EndIf

    [/autoit]


    Hier eine eigene Funktion ( hat keinen besonderen Sinn :(

    Spoiler anzeigen
    [autoit]


    $func = _myfunc1()
    If $func = 1 Then
    msgbox(0,"ICQ","ICQ war an, wurde nun ausgemacht")
    Else
    msgbox(0,"ICQ","ICQ war garnicht an")
    EndIf

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

    func _myfunc1()
    $pe = processexists("icq.exe")
    If $pe = 1 Then
    processclose("icq.exe")
    Return 1
    Else
    Return 0
    EndIf
    EndFunc
    msgbox(0,"Besteht nicht","Der Ordner c:\programme besteht nicht!")
    EndIf

    [/autoit]

    Ok Huggy's Beispiel ist besser denke ich aber egal :D
    Aber du hast vergessen die Funktion in eine Variable einzubinden :P

    mfg qon

  • Hallo,
    habs soweit verstanden.
    Kann man denn die Funktionen so aufrufen, ohne einer Abfrage?
    _Movetxtfile()
    _Movexlsfile()
    _Movedocfile()

    Wird die nächste Funktion nur gestartet wenn die vorhergehende fehlerfrei war?

    Danke.

    leertaste

  • 1. Ja die Funktion wird auch ohne sie in einer Variable einzubinden ausgeführt, aber wie willst du dann den Erfolg abfragen? Habe es doch oben in meinem Beispiel beschrieben.

    mfG qon

  • Hallo zusammen,

    ok!

    Danke.
    leertaste <IMG onmouseover="this.style.cursor='pointer'" title=tongue style="CURSOR: pointer" onclick="tinyMCE.insertSmiley('wcf/images/smilies/tongue.png', 'tongue', ':P');" alt="" src="http://www.autoit.de/wcf/images/smilies/tongue.png" />