Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Application.OnException - woher kommt die Exception (https://www.delphipraxis.net/126585-application-onexception-woher-kommt-die-exception.html)

haentschman 28. Dez 2008 23:02


Application.OnException - woher kommt die Exception
 
Hallo alle...

Ich habe eine "globale" Fehlerbehandlung.

woher kann ich innerhalb der Exception Informationen beziehen woher die Exception kommt ?
...die Caption oder der Name der Form würde schon reichen.

TObject gibt nicht viel her. Mit ClassName oder ClassParent.ClassName bekomme ich nur z.B. TPanel oder TCustomPanel.
Exception habe ich nur die Message.

...muß ich mir eigene Exceptions kreieren um an solche Informationen zu kommen ?

PS: ich habe da noch Assert gefunden verstehe aber das ganze nicht wirklich :oops:


Danke für Infos.

taaktaak 28. Dez 2008 23:05

Re: Application.OnException - woher kommt die Exception
 
Mit assert() löst du selbst eine Exeption aus
Zitat:

Assert übernimmt als Parameter einen Booleschen Ausdruck und einen optionalen Meldungstext. Schlägt der Boolesche Test fehl, löst Assert eine EAssertionFailed-Exception aus.
// edit: Hilft vielleicht dies weiter?

haentschman 28. Dez 2008 23:09

Re: Application.OnException - woher kommt die Exception
 
...das wäre dann auch nicht die richtige Richtung.

:gruebel: Ich hatte das irgendwo im Zusammenhang mit Debugginformationen gelesen. Im Prinzip Exceptions wie aus dem Debugger.

Danke für die schnelle Reaktion.

Sunlight7 28. Dez 2008 23:34

Re: Application.OnException - woher kommt die Exception
 
Delphi-Referenz durchsuchenExceptAddr sollte da helfen

haentschman 29. Dez 2008 00:32

Re: Application.OnException - woher kommt die Exception
 
Habe mir alle Tipps mal angeschaut und weiter gesucht. :roll:

Dann habe ich mal ein wenig mit Assert herumgespielt. Das müßte aber auch an dem Ort der Exception stehen um die richtigen Werte zu liefern.

ExceptAddr liefert nur in Verbindung mit einer Map Datei Ergebnisse. (wollte ich aber nicht)

In der Jcl soll es noch was geben. Aber auch in Verbindung mit Map Datei.

dann noch... Zeilennummer herausfinden ?

Fazit:

- ich schlafe mal eine Nacht drüber... :wink:
- um alle relevanten Stellen try except und die Message um einen Text erweitern, den ich dann im Exceptionhandler auswerten kann.

gibt es noch andere Varianten ?

Danke für Eure Infos.

:hi:


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:36 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz