Variablen in FileWriteLine mitgeben?

  • Hallo zusammen,

    wie schon erwähnt bin ich noch neu auf dem Gebiet AutoIT und hab grad ein Problem,
    welches sicher nichtmal ein erwähnenswertes ist.

    Also, ich möchte in eine Datei schreiben und Werte, welche ich zuvor zugewiesen hab mitgeben.
    Hier das Fragment:

    Spoiler anzeigen
    [autoit]


    $filedate = FileGetTime("xxyy.zip")
    $filesize = FileGetSize("xxyy.zip")
    FileOpen("log.txt", 1)
    FileWriteLine("log.txt", $filedate & "-" & $filesize & "Bytes - Datei gefunden" & @CRLF)
    FileClose("log.txt")

    [/autoit]

    Die Datei wird allerdings nicht beschrieben und bleibt leer. :(

    Hoffe ihr könnt mir helfen

    Einmal editiert, zuletzt von Davor (7. Dezember 2007 um 09:27)

    • Offizieller Beitrag

    Bei Verwendung von Fileopen wird ein Filehandle zurückgegeben, welches du für die weiteren Schritte verwenden mußt.

    [autoit]

    $fh = FileOpen("log.txt", 1)
    FileWriteLine($fh, $filedate & "-" & $filesize & "Bytes - Datei gefunden" & @CRLF)
    FileClose($fh)

    [/autoit]

    Schau doch mal die Funktion _FileWriteLog() an, ich denke so etwas suchst du.

  • Hallo Davor!

    hier meinen Lösung, täglich einige "kilo-Male" im Einsatz:

    kleine Funktion namens _protoutput
    (sehr praktisch, wenn man größere Protokolle schreiben muß, bei Interesse, ich hab auch noch ein loggrep dazu, daß dann Zeilen nach einem oder mehreren Suchbegriffen "rausfiltern" und z.B. in die zwischenablage schreiben kann)
    Bevor hier irgendwelche Kritiker kommen:
    klar dauert das immer ne Datei öffnen und schließen, aber bei mir muß das 100% sicher (und nachweisbar) funktionieren, mal schnell in ein Array ballern und die Kiste fährt in blue-Screen geht halt nicht bei jeder Anwendung oder jeden Daten)


    Gruss

    German


    Func _protoutput($PROTFILE,$TEXT)

    $datelong = @YEAR & @MON & @MDAY & @HOUR & @MIN & @SEC

    $pfile=Fileopen($Protfile,1)
    ; Check if file opened for reading OK
    If $pfile = -1 Then
    MsgBox(64, "PROTOKOLLDATEI" & " " & $PROTFILE, "kann nicht geöffenet werden",10)
    Exit
    EndIf

    FileWrite($pfile, $datelong & " " & $TEXT & @CRLF)


    FileClose($pfile)

    EndFunc