Für die letzte ariante ist nur diese eine Prozedur nötig ... nichts weiter.
Delphi-Quellcode:
procedure AddToLog(S: String);
var T: TextFile;
FileName: String;
begin
FileName := 'FilePrefix_' + FormatDateTime('yyyy-mm-dd', Now) + '.txt';
AssignFile(T, FileName);
If FileExists(FileName) Then Append(T) Else Rewrite(T);
WriteLn(T, S);
CloseFile(T);
Memo1.Lines.Add(S);
While Memo1.Lines.Count > 100 Then Memo1.Lines.Delete(0);
end;
Du brauchst also nur
AddToLog(...), statt
Memo1.Lines.Add(...); aufzurufen und der Timer ist dan auch nicht mehr nötig.
Es iwrd in dieser Prozedure ja mit
WriteLn(T, S); der Text in die Datei geschrieben und per
Memo1.Lines.Add(S); in das Memo.
If FileExists(FileName) Then Append(T) Else Rewrite(T);
Zu APPEND und REWRITE findest du was in der
OH, da aber APPEND fehlschlägt, wenn die Datei nicht existiert, wird in diesem Fall REWRITE verwendet ... getestet per FILEEXISTS.