Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.114 Beiträge
 
Delphi 12 Athens
 
#4

AW: Aufrufer / Stack ermitteln aus einer Funktion heraus

  Alt 14. Nov 2017, 16:32
Wenn er eh nur den vorherrigen Aufrufer haben will, dann reicht ReturnAddress vermutlich zu 99,99%
was wohl dem ersten Eintrag in StackWalk64 entsprechen würde.

Das Umwandeln von Adresse zu Name nimmt dir aber keine der beiden Funktionen ab.



Delphi selber und auch ich nehmen ReturnAddress gern für Exceptions und das funktioniert eigentlich ganz gut. (von Inline-Methoden mal abgesehn)
Also wo man innerhalb einer Methode eine Exception auslöst, aber der Verursacher eigentlich der Aufrufer ist.
raise Exception.Create('...') at ReturnAddress;
Da zeigen dann der Debugger und z.B. Eurekalog nicht die Zeile des Raise-Exception, sondern des Aufrufers/Verursachers an.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (14. Nov 2017 um 16:36 Uhr)
  Mit Zitat antworten Zitat