Einzelnen Beitrag anzeigen

Benutzerbild von LoewenZahn
LoewenZahn

Registriert seit: 10. Okt 2013
22 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: Delphi 2006 - Fehlerbehandlung - Event?

  Alt 20. Mär 2014, 08:37
Hallo,

leider scheint dies, zumindest in meinem Borland 2006 nicht zu funktionieren:

Delphi-Quellcode:
procedure TApplication.HandleException(Sender: TObject);
begin
  if GetCapture <> 0 then SendMessage(GetCapture, WM_CANCELMODE, 0, 0);
  if IsClass(ExceptObject, Exception) then
  begin
    if not IsClass(ExceptObject, EAbort) then
      if Assigned(FOnException) then
        FOnException(Sender, Exception(ExceptObject))
      else
        ShowException(Exception(ExceptObject));
  end else
    SysUtils.ShowException(ExceptObject, ExceptAddr);
end;
Und hier das OnException:

Delphi-Quellcode:
procedure TFormMain.ApplicationEvents1Exception(Sender: TObject; E: Exception);
Var F : textFile;
begin

  //Ausgabe des Fehlers in einem TAdvSmoothMessageDialog:
  md.HTMLText.Text := 'Es ist ein Schwerwiegender Fehler augetreten:<br/><br/><ul><li>'
                     +E.Message
                     +'</li></ul><br/><br/>Bitte kontaktieren Sie den Support.';
  md.Caption := 'Schwerwiegender Fehler';
  md.Execute;

  //Speichern des Errors in einer Textdatei:
  AssignFile(F,Dir_StartDir+'errorlog\'+loginname+'.log');
  If Not FileExists(Dir_StartDir+'errorlog\'+loginname+'.log') Then Rewrite(F)
  Else Append(F);

  Writeln(F,DateTimetostr(Now)+': '+E.Message+' | ActiveWindow: '+recent_visited_form.text);
  CloseFile(F);

end;
Ist ja auch halb so wild wenn ich es über die Einstellungen/Obtionen von Borland mache. Aber wohl ist mir dabei nicht

Gruß und danke für die bisherige Hilfestellung!
Tim
Passwörter sind wie Unterwäsche. Du darfst sie keinen sehen lassen, musst sie regelmäßig wechseln und solltest sie nicht mit Fremden tauschen.
  Mit Zitat antworten Zitat