AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

record zur Laufzeit analysieren

Ein Thema von jj-guitar · begonnen am 16. Okt 2002 · letzter Beitrag vom 17. Okt 2002
Antwort Antwort
jj-guitar

Registriert seit: 16. Okt 2002
4 Beiträge
 
#1

record zur Laufzeit analysieren

  Alt 16. Okt 2002, 14:33
Hallo Leute,

ich habe ein Programm mit vielen wechselnden Datenstrukturen, die sich als record implementieren lassen. Jetzt würde ich gerne eine LIB schreiben, die diese Daten analysiert und im Header die Info einträgt, um sie später wieder richtig einzulesen, auch wenn sich der Inhalt des record erweitert hat.

Wie bekomme ich zur Laufzeit Informationen zum Inhalt eines record?

Danke im Voraus
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2
  Alt 16. Okt 2002, 17:53
Moin jj-guitar,

erst einmal herzlich willkommen.

Nun zu Deiner Frage.
Ich habe das so verstanden, dass Du verschieden Recordtypen deklariert, und mit diesen Dateien erzeugt hast.
Nun möchtest Du, nachträglich, den Records Header verpassen, damit Du weisst welchen Inhalt der jeweilige Record hat.

Hab' ich das soweit richtig verstanden?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
jj-guitar

Registriert seit: 16. Okt 2002
4 Beiträge
 
#3
  Alt 17. Okt 2002, 10:35
Danke für die schnelle Antwort.

Ich hatte vor an die Typ-Informationen der records im Speicher zu kommen. Aber deine Antwort lässt mich vermuten, dass es solche Infos gar nicht gibt.

Der Debugger hat sie ja. Aber wahrscheinlich nur in Debug-Dateien.

Vielleicht kann man ja die eigene EXE-Datei scannen und die Infos da rausbekommen?
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#4
  Alt 17. Okt 2002, 15:15
Moin jj,

das Problem dabei dürfte folgendes sein:
Wenn in der EXE, aus dem die Typinformationen stammen sollen (spielt keine Rolle, um welchen Typ es sich handelt), diese nicht angesprochen werden, so werden sie auch nicht mitgespeichert.
Werden also in dem Programm keine TypInformationen zu einem bestimmten Typ angesprochen, werden die TypInformationen auch nicht mit gespeichert, was ja auch im Sinne einer möglichst kleinen EXE ist.
Warum unnötige Daten speichern?

Wenn Du mal einen Blick in die TypInfo.pas wirfst (so Du denn mindestens eine Pro Version hast), wirst Du feststellen, dass der Typ tkRecord in der Liste von TTypeKind vorkommt, es also zumindest mal angedacht war TypInformationen zu Records mit zu speichern.
Möglicher Weise werden also TypDaten zu Records mit in die EXE übernommen, wenn man denn diese in irgendeiner Form anspricht.

Ein Stichwort dazu wäre RTTI (RunTimeTypeInformation).
Leider ist die TypInfo und deren Funktionen nicht sonderlich dokumentiert, so dass man auf eigene "Forschungen" angewiesen ist. Entweder durch Studium der TypInfo.pas, oder durch ergoogeln
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  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 23:41 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