Hallo !
Ich habe seinerzeit in Delphi1 (16Bit) ein Programm geschrieben, das seine Daten in typisierten Dateien ablegt (mit record und so). Jetzt muss ich in Delphi5 (32Bit) Routinen schreiben, mit denen ich diese Daten lesen und in ein neues Programm importieren kann.
Der Record-Typ für eine der Dateien sah damals so aus:
Delphi-Quellcode:
type
kauf_verk = record
art : shortint;
tier : integer;
name : string[15];
vorohr : string[15];
vermart: string[15];
datum : string[10];
adrnr : string[4];
grund : string[30];
end;
Integer hatte damals 16Bit und hat heute 32Bit. Folglich verwende ich im record meines Delphi5-Programms stattdessen Smallint. Prinzipiell müsste das doch dann funktionieren, oder ? Beim Lesen der Daten zeigt sich aber, dass sie innerhalb des records "verschoben" sind (d.h. die Länge nicht stimmt). Außerdem bekomme ich beim letzten Datensatz den Fehler "Lesen nach Dateiende".
Muss ich da noch was beachten ? String[15] bleibt doch z.B. string[15] und an shortint hat sich doch eigentlich auch nix geändert ?!?
Danke schonmal !
Daniel