[color=#000080]// Die saubere Lösung[/color]
[b]type[/b]
TForm1 = [b]class[/b](TForm)
[b]procedure[/b] FormCreate(Sender: TObject);
[b]private[/b]
[color=#000080]{ Private-Deklarationen }[/color]
[b]public[/b]
[color=#000080]{ Public-Deklarationen }[/color]
[b]PROCEDURE[/b] ExceptGerMeldung (Sender : Tobject;E :
Exception);
[b]end[/b];
[b]var[/b]
Form1: TForm1;
[b]implementation[/b]
[color=#000080]{$R *.DFM}[/color]
[b]PROCEDURE[/b] TForm1.ExceptGerMeldung (Sender : Tobject;E :
Exception);
[b]BEGIN[/b]
MessageDLG (' Fehler : ' + E.Message+#10#13+
' Fehlertyp : ' + E.Classname+#10#13+
' Sender : ' + Sender.Classname,mtError,[mbOK],0);
[b]END[/b];
[b]procedure[/b] TForm1.FormCreate(Sender: TObject);
[b]begin[/b]
Application.OnException := ExceptGerMeldung;
[b]end[/b];
[color=#000080]// ... und die schmutzige...[/color]
[b]PROCEDURE[/b] ExceptGerMeldung (Sender : Tobject;E :
Exception);
[b]var[/b]
Form1: TForm1;
[b]implementation[/b]
[color=#000080]{$R *.DFM}[/color]
[b]PROCEDURE[/b] ExceptGerMeldung (Sender : Tobject;E :
Exception);
[b]BEGIN[/b]
MessageDLG (' Fehler : ' + E.Message+#10#13+
' Fehlertyp : ' + E.Classname+#10#13+
' Sender : ' + Sender.Classname,mtError,[mbOK],0);
[b]END[/b];
[b]procedure[/b] TForm1.FormCreate(Sender: TObject);
[b]var[/b]
p : ^TExceptionEvent;
[b]begin[/b]
p := @ExceptGerMeldung;
Application.OnException := p^;
[b]end[/b];