Einzelnen Beitrag anzeigen

Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#3

Re: wie sicher ist diese procedure?

  Alt 7. Nov 2004, 08:31
Hai,

ich würde, so wie Jelly es vorgeschlagen hat, prüfen ob die Logdatei vorhanden ist.
Ausserdem solltest Du in jedem Fall mit try-except Blöcken arbeiten. Da es ja für dein "Debugsystem" ist musst Du dafür sorgen das die Funktion auf keinen Fall selber einen Fehlerverursacht der dein Programm zum Absturz bring
Das hier wäre eine möglichkeit. Wenn Du den except-Teil noch verfeinerst kannst Du in deinem Programm noch auswerten warum der Aufruf der Funktion fehlgeschlagen ist.

Delphi-Quellcode:
function Log(Text: string) : Integer;
const
  filename = 'Data/Log.txt';

var
  LogFile: TextFile;
  TDTempStr: string;
  errorlevel : Integer;

begin
  errorlevel := 0; // Keine Fehler
  try
    DateTimeToString(TDTempStr, 'dd.mm.yyyy hh:nn:ss', Now());
    TDTempStr := TDTempStr + ': ' + Text;
    AssignFile(LogFile, filename);
    if not (FileExists(filename)) then
    begin
      Rewrite(logfile);
    end
    else
    begin
      Append(LogFile);
    end;
    Writeln(LogFile, TDTempStr);
    Flush(LogFile);
    CloseFile(LogFile);
  except
    errorlevel := 1; // Fehler
  end;
  result := errorlevel;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat