Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
Delphi 3 Standard
|
Re: eine einfache triviale Logfunktion mit Datum und Uhrzeit
8. Aug 2003, 06:43
Hallo alle zusammen,
hier noch eine zweite, korrigierte und geänderte Fassung nach den Anregungen von negaH.
Delphi-Quellcode:
function StringMsgToFile(Msg: string;
WithDateTime: Boolean = True;
FileName: TFileName = ' '): Boolean;
const
OpenFlags: array[Boolean] of Integer = (fmCreate or fmShareExclusive, fmOpenReadWrite or fmShareExclusive);
var
FileStream: TFileStream;
begin
Result := False;
if Trim(Filename) = ' ' then
FileName := ChangeFileExt(ParamStr(0), ' .log');
// Datei öffnen
FileStream := TFileStream.Create(FileName, OpenFlags[FileExists(FileName)]);
{ Falls TFileStream.Create auf einen Fehler rennt, dann ist hier schon Schluß mit
der Funktion. Es wird eine Standard Exception von TFileStream.Create ausgelöst. }
try
// an das Ende der Datei gehen (Append Modus)
FileStream.Seek(0, soFromEnd);
// CRLF an die Message anhängen
Msg := Msg + CRLF;
// Datum, Uhrzeit falls nötig einfügen
if WithDateTime then
Msg := FormatDateTime(' ddd d. mmm. yyyy, hh:mm:ss: ', Now) + Msg;
// Message schreiben
FileStream. Write(PChar(Msg)^, Length(Msg));
finally
// FileStream freigeben
FileStream.Free;
end;
// und Status zurückgeben
Result := True;
end;
bye
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
|
|
Zitat
|