![]() |
Re: Exceptions speichern
Na, dann wollen wir mal nich so sein :wink:
Also, zuerst machst du dir ne Prozedur, in der die Fehler behandelt und gespeichert werden. Hier mal eine Idee:
Delphi-Quellcode:
Wichtig: die Parameter müssen so bleiben!
procedure TForm1.AppException(Sender: TObject; E: Exception);
var FName: String; List: TStrings; begin FName := ExtractFilePath(ParamStr(0)) + 'Errors.log'; List := TStringList.Create; try with List do begin if FileExists(FName) then LoadFromFile(FName); Add('[' + DateToStr(Now) + ' / ' + TimeToStr(Now) + ']' + ' ' + E.Message); SaveToFile(FName); end; finally FreeAndNil(List); Application.ShowException(E); Application.Terminate; end; end; Dann weist du deine Prozedur dem OnException-Ereignis zu:
Delphi-Quellcode:
Und schon fertig :wink:
procedure TForm1.FormCreate(Sender: TObject);
begin Application.OnException := AppException; end; Mfg |
Re: Exceptions speichern
Autsch, warum Terminieren nach der Exception?
|
Re: Exceptions speichern
Zitat:
![]() |
Re: Exceptions speichern
Zitat:
|
Re: Exceptions speichern
@Fusballrowdy:
-Zur Vereinfachung gibt es noch TApplicationEvents, da kann man das einfach anklicken -Was passiert mit Exceptions, welche direkt in der Funktion abgefangen werden (try..except..end) ? -Wieso Terminate wurde ja schon gefragt. |
Re: Exceptions speichern
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
|
Re: Exceptions speichern
Den kenn ich schon :zwinker:
|
Re: Exceptions speichern
Mh, ich erkläre mal schematisch was ich gemacht hatte:
stringlist erstellen absichtlich einen fehler machen (double-wert einer integer-variablen zuweisen) => fehler kommt => => on ex: Exception do ShowMessage('Exception detected:' +#13+ ex.message); text := ex.Message; // hier war spätestens der fehler. ich werde mir das tutorial mal verinnerlichen =) |
Re: Exceptions speichern
Zitat:
Terminate ist Quatsch, ja. Ich hab das vor einem halben Jahr oder so das letzte mal benutzt und jetzt nur ausm Kopf runtergetippt. Sorry :? |
Re: Exceptions speichern
Das mit dem Terminate ist ja aber schon seltsam .. egal.
Ich habs weggenommen. Merci, ich verstehe diese ganze Sache jetzt . |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz