Autor Beitrag
Edmund Jenner-Braunschmie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 34

WIN XP Professional
D2009 Professional
BeitragVerfasst: Di 11.11.08 18:20 
Hallo,

ich habe zum Beispiel ein record

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
type
  TMyRecord = Record
    Bool1 : boolean;
    Str1  : string[20];
  end

var MyRecord = TMyRecord;


und möchte nun irgendwie die Namen der einzelnen Record-Einträge auslesen, sodass
dann (wahrscheinlich in einer String-Variable) z.B. 'MyRecord.Bool1' rauskommt.

Gibt es hierfür irgendeine Möglichkeit. Ich suche nun schon Stunden lang und
irgendwie komme ich nicht weiter.

Vielen Dank schonmal und liebe Grüße
Edi

Moderiert von user profile iconmatze: Delphi-Tags hinzugefügt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19340
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 11.11.08 18:27 
Das ist nicht so einfach, denn die Namen deiner Variablen, Strukturen, etc. werden nicht mit in deine Exe kompiliert. Dort sind das nur noch Speicheradressen.

Du solltest vielleicht einfach mal schreiben wofür du das brauchst, dann gibt es vielleicht auch eine Lösung. So wie du es jetzt machen möchtest wird es nicht gehen.
Edmund Jenner-Braunschmie Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 34

WIN XP Professional
D2009 Professional
BeitragVerfasst: Di 11.11.08 19:17 
Hallo,

danke vorerst für die Antwort.

Zu meiner Aufgabenstellung:

Ich habe eine SPS, auf deren Variablen ich mittels diverser DLL-Funktionen
zugreifen kann: z.B: function readBooleanFromSps(VarName : string) : boolean;

Jetzt möchte ich die gleichen Strukturen, die in der SPS existieren auch
im Delphi-Projekt als Records anlegen und dann eine Methode (wahrsch. rekursiv)
schreiben, die alle Daten automatisch aus der SPS rauslädt.
.. um sie zum Beispiel in eine XML-Datei zu speichern.

Ich hoffe dies ist einigermaßen verständlich.

lg Edi
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Di 11.11.08 19:30 
user profile iconEdmund Jenner-Braunschmie hat folgendes geschrieben Zum zitierten Posting springen:
Jetzt möchte ich die gleichen Strukturen, die in der SPS existieren auch
im Delphi-Projekt als Records anlegen und dann eine Methode (wahrsch. rekursiv)
schreiben, die alle Daten automatisch aus der SPS rauslädt.
.. um sie zum Beispiel in eine XML-Datei zu speichern.

Die Verwaltung der Records wird schwierig sein, XML ist aber kein Problem. Du könntest eine Liste oder ein Array anlegen, das Records mit dem Namen (String) und dem Wert (ist das immer Boolean) enthält. Dann kannst du auch auf die Daten zugreifen.
Edmund Jenner-Braunschmie Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 34

WIN XP Professional
D2009 Professional
BeitragVerfasst: Mi 12.11.08 09:00 
Hallo,

Danke ihr zwei.

Somit ist das Thema für mich klar und ich muss mir eben was anderes überlegen.

Wahrscheinlich werde ich's so ähnlich lösen, wie Yogu es empfiehlt.

lg
Edi