AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Library: Sonstiges Delphi Run-Time-Type-Information zur Laufzeit auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Run-Time-Type-Information zur Laufzeit auslesen

Ein Thema von negaH · begonnen am 10. Aug 2005
Antwort Antwort
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#1

Run-Time-Type-Information zur Laufzeit auslesen

  Alt 10. Aug 2005, 20:12
Kurzer Titel:
zusätzliche Funktionen zur RTL-Unit TypInfo.pas

Gute Erklärung:
mit Hilfe eines undokumentierten Tricks kann man zur Laufzeit über alle Typ Informationen, sprich der RTTI eines geladenen Modules iterieren. Mit Hilfe der Unit im Attachment kann man zb. alle Klassen, Units, Interfaces eines Modules ermitteln.
Wichtig ist aber zu bedenken das die Basisfunktion in der Unit auf einem nicht dokumentiertem Verhalten des Delphi Compilers beruht. Ich habe zwar seit Delphi 2 bis Delphi 7 keinerlei Änderungen an dieser Eigenschaft des Compilers festgestellt, aber denoch sollte man dies berücksichtigen.

Lesbarer Code:
findet sich im Attachment.

Autoren: Heiko Behrens ala Choose, Hagen Reddmann ala negaH

Gruß Hagen

[edit=Matze]Anhang aktualisiert. Mfg, Matze[/edit]
Angehängte Dateien
Dateityp: pas typinfoex_415.pas (23,1 KB, 181x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:14 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