AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Problem mit lesen von records aus Delphi 4 in Turbo Delphi
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit lesen von records aus Delphi 4 in Turbo Delphi

Ein Thema von ete · begonnen am 18. Mai 2008 · letzter Beitrag vom 18. Mai 2008
 
Benutzerbild von himitsu
himitsu

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

Re: Problem mit lesen von records aus Delphi 4 in Turbo Delp

  Alt 18. Mai 2008, 14:23
hast du dein D4 noch? (blöde Frage ... wenn du SizeOf schon getestet hast )
notfalls dort die Daten einlesen und neu (in neuem Format) speichern.


für Records, welche übertragen oder gespeichert werden sollen, macht es sich auch besser, wenn sie entsprechend formatiert werden.
- packed Record
- feste Typengrößen (z.B. LongInt statt Integer)

denn sonst bekommt man zwanksläufig Probleme, wenn sich etwas an der Kompilierung ändert
- 32 Bit <> 64 Bit
- andere Speicherausrichtung
- usw.

insgesammt macht es sich eh gut, den Record mal etwas aufzuräumen:
Delphi-Quellcode:
InitStruct = packed Record
  VersionTcd : String[30]; (* Version der Schaltplandatei *)
  MaxSeite : LongInt; (* Anzahl der Seiten *)
  AnbindungsFarbe : TColor; (* Farbe der Anbindungspunkte *)
  HintergrundFarbe : TColor; (* Bildschirmhintergrundfarbe *)
  RectWahlColor : TColor; (* Farbe des Auswahl Rechtecks *)
  PfadAnzahl : LongInt; (* Anzahl der Pfade pro Seite *)
  KYpos : UU; (* y Lage des Kontaktspiegels *)
  DruckLinienStaerke : LongInt; (* Linienstaerke beim Ausdruck *)
  AnbindungenZeichnen : Boolean; (* Anbindungen werden gezeichnet *)
  EinfuegePunkteZeichnen : Boolean; (* Einfügepunkte werden gezeichnet *)
  JpgSchraffur : Boolean; (* bei true wird Jpg als Schraffur gezeichnet *)
  xyJpg : Boolean; (* Jpg in Rechteck eingepasst *)
  xJpg : Boolean; (* Jpg wird auf x-Maße angepasst *)
  yJpg : Boolean; (* Jpg wird auf y-Maße angepasst *)
  RasterMarkerSize : LongInt; (* Groesse des Raster in Pixel *)
  EinfuegePktMarkerSize : LongInt; (* Größe der Einfügepunkt Marker in Pixel *)
  EinfuegePktMarkerWidth : LongInt; (* Liniendicke Marker Einfuegepunkte *)
  EinfuegePktMarkerColor : TColor; (* Farbe Marker der EinfuegePunkte *)
  KontaktSpiegelColor : TColor; (* Farbe der Kontaktspiegel *)
  KontaktSpiegelWidth : UU; (* Linienstärke Kontaktspiegel *)
  VerweisColor : TColor; (* Farbe der Quer und Rückverweise *)
  VerweisWidth : UU; (* Linienstärke Verweise *)
  vlength : UU; (* Länge der Anbindungspunkte *)
  UText : packed Array[1..20] of String[50];
  ReserveStr : packed Array[1..20] of String[255];
  ReserveInt : packed Array[1..16] of LongInt;
  ReserveDU : packed Array[1..16] of DU;
  ReserveUU : packed Array[1..16] of UU;
  ReserveBit : packed Array[1..16] of Boolean;
  ReserveColor : packed Array[1..16] of TColor;
end;


PS: da der Record jetzt kleiner ist, hat D4 wohl etwas anders (gepackter ausgerichtet)

du kannst aber auch mal versuchen rauszufinden, wie D4 ausgerichtet hat, dann den Record in TD als packed erstellen und entsprechende FüllBytes dort einfügen.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


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 19:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz