Hallo nochmal,
also folgendes. Ich hab vor,d asss der BEnutzer einen Text eingibt und der in eine TXT-Datei geschrieben wird. Anschliessend soll die Textdatei mti Notepad geöffnet werden. Ich benutze dafür folgenden Code.
[autoit]
#include <process.au3>
MsgBox(0, "Arbeitsverzeichnis", "Dies ist ihr aktuelles Arbeitsverzeichnis:" & @WorkingDir)
$text = InputBox("Datumsabfrage", "Bitte irgendwas eingeben.")
$file = FileOpen("FileTest.txt", 1)
If $file = -1 Then
MsgBox(0, "Fehler", "Datei kann nicht geöffnet werden. Na dann sieh mal zu.", 10)
Exit
EndIf
FileWrite("FileTest.txt", 1)
For $i = 1 to 10 step 1
FileWrite($file, $text & @CRLF)
Next
FileClose( @workingDir & "FileTest.txt")
Sleep(3000)
_RunDOS("start notepad.exe " & @WorkingDir & "\FileTest.txt")
Sleep(1000)
WinWaitActive("FileTest.txt")
Sleep(1000)
WinKill("FileTest.txt - Editor")
Wenn er jetzt automatisch Notepad öffnet, steht da nichts ausser einer 1, die ich auch noch gern weghaben würde. Wenn ich die Datei per Hand öffne, steht alles drin, was drin stehen soll.
Im nachfolgenden würde ich es gerne haben, dass er einen zweiten Dialog öffnet und die erste Datei mit dem neuen Input überschreibt. Dafür hab ich folgenden Code versucht.
[autoit]
$otext = InputBox("Überschreiben vorbereiten", "Geben sie bitte die neuen Daten ein")
$ofile = FileOpen("FileTest.txt", 2)
If $ofile = -1 Then
MsgBox(0, "Error", "This Baby Got A Temper!!!")
Sleep(250)
Exit
EndIf
FileWrite("FileTest.txt", 1)
For $o = 1 to 10 step 1
FileWrite($ofile, $otext & @CRLF)
Sleep(100)
Next
Sleep(1000)
_RunDOS("start notepad.exe " & @WorkingDir & "\FileTest.txt")
Sleep(1000)
WinWaitActive("FileTest.txt - Editor")
Sleep(1000)
WinKill("FileTest.txt - Editor")
MsgBox(0, "End", "That's All Folks")
Aber irgendwie arbeitet das gar nicht.
Und eine Frage noch. Wie funktioniert das hier mit den Spoiler-Tags? Wollte meine Codes mit [Spoiler] umschliessen, damit sie nicht zu lang werden, aber irgendwie ignoriert er das bei mir in der Vorschau.