Einzelnen Beitrag anzeigen

tgvoelker

Registriert seit: 9. Sep 2002
Ort: Oelsnitz, Vogtland
39 Beiträge
 
Delphi 2009 Professional
 
#5

AW: Finden aller Klassen zur Laufzeit

  Alt 4. Jul 2012, 11:40
Wobei du auf diese Weise auch immer mit False-Positives rechnen mußt
Die werden wie folgt ausgeschlossen:

1. Prüfung: Zeigt ein ausgerichteter Pointer auf die eigene Adresse+Offset 88?
2. Prüfung: Entspricht der Klassenname beim Offset 32 dem, was der als TObjectClass gecastete Pointer aus (1) als "ClassName" zurückgibt? ==> EAccessError, wenn keine Klasse
3. Prüfung (redundant): über InheritsFrom(TObject).

Wenn die Methodenzeiger für GetClassName und InheritsFrom auf irgendwas zeigen, dann knallt es - ergo: keine Klasse.
Thomas Völker
  Mit Zitat antworten Zitat