Einzelnen Beitrag anzeigen

Benutzerbild von Ajintaro
Ajintaro

Registriert seit: 20. Okt 2004
Ort: Sankt Augustin
138 Beiträge
 
Delphi XE6 Starter
 
#1

Bei wachsendendem Logfile auf bestimme Zeile reagieren

  Alt 1. Dez 2012, 14:41
Delphi-Version: XE2
Hallo DP !

Ein Programm loggt Ereignisse mit und schreibt es in ein logfile.
Ich moechte nun dieses Logfile ueberwachen und bei einer bestimmte Zeile einen einfachen beep ausgeben.

Auszug aus dem Logfile:

1) Tomaten sind meistens rot
2) Telefonieren ist teuer
3) Tanken auch !
4) Delphi ist: [einfach toll]
5) Delphi ist: [total genial]
6) Wer mag Bananen?

Ich interessiere mich fuer folgende Zeilen: "Delphi ist: [Text]"
Ein Timer soll die Ueberwachung des Logfiles uebernehmen und einen beep ausgeben sobald die Zeile: "Delphi ist: [Text]" ins logfile geschrieben wird.

Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var
   sl:TStringList;
   s :string;
begin
sl := TStringList.Create;
sl.LoadFromFile(e_logpath.Text);
//nach der Zeile suchen
//wenn gefunden: beep
sl.Free;
end;
Somit sl.LoadFromFile(e_logpath.Text); ist das ganze Logfile in der Stringlist. Ist aber nicht notwendig weil mich immer nur die neuen Zeilen interessieren, die nach dem aktivieren des Timers hinzukommen.

Mit TStringList.IndexOf('Delphi ist: '); kann ich das Vorkommen der Zeile sicherstellen.

Eigentlich hab ich fast alle Bausteine die notwendig sind, aber ich schaff es damit nicht mein Problem damit zu loesen.

Koennt ihr mir helfen?
Jaimy
DAoC 2.0 -> Camelot Unchained !
  Mit Zitat antworten Zitat