Thema: Delphi Log Datei

Einzelnen Beitrag anzeigen

SMO

Registriert seit: 20. Jul 2005
178 Beiträge
 
Delphi XE6 Professional
 
#5

AW: Log Datei

  Alt 1. Mär 2015, 17:09
Klar gibt es die: Du deklarierst eine globale TStringList und erweiterst die zu loggenden Methoden, um via Add den gewünschten Text hinzuzufügen. Nach jedem Add speicherst du die Stringliste via SaveToFile.
Das halte ich für keine gute Idee, jedenfalls nicht bei längeren Logs. Denn dann werden massenhaft unnötig Daten auf Platte geschrieben (jedes Mal die komplette StringList statt nur des letzten Eintrags).

Ich verwende für solche Fälle eine eigene, kleine Logger-Klasse, die wahlweise den Logtext in einem Konsolenfenster ausgibt, an OutputDebugString sendet, in eine Textdatei oder eine Html-Datei schreibt. Konsole und Html unterstützen dabei verschiedene Farben, was den Logtext leserlicher machen kann.

OK, ich habe beim starten meiner Anwendung im Netz (nur im Netz und nur auf Windows 8.1 Rechner einfach einen Absturz. Das Programm hängt sich auf aber nicht immer.)
Was bedeutet starten im Netz?
Wenn das Log keine Datei sein muss, dann würde ich dir raten, eine Ausgabe auf Konsole zu probieren.
Dazu einfach AllocConsole aufrufen (erzeugt das Konsolenfester für dein Programm), danach kann dein Programm per WriteLn auf die Konsole schreiben, selbst wenn es eine VCL-Anwendung ist.
Alternativ eben OutputDebugString - dabei bleibt die Ausgabe unsichtbar, du musst ein spezielles Programm wie den Delphi-Debugger oder DebugView benutzen, um sie zu sehen.

Geändert von SMO ( 1. Mär 2015 um 18:53 Uhr)
  Mit Zitat antworten Zitat