stimmt ja @Mario, das hätte ich ja beinahe vergessen, allerdings weiß ich nicht, ob D1 das auch schon machte (also vermutlich bei 16 Bit), oder ob's da noch nicht so war (also ohne Ausrichtung)
wenn's da nicht ausgerichtet wurde, dann kannst du einfach das verwenden
Delphi-Quellcode:
type
kauf_verk = packed record
art : shortint;
tier : smallint;
name : string[15];
vorohr : string[15];
vermart: string[15];
datum : string[10];
adrnr : string[4];
grund : string[30];
end;
aber wenn nicht, dann wird es schin schwieriger:
falls es da auch bei 32 Bit (4 Byte) ausgerichtet wurde, dann kanst du's ohne das PACKED machen (wird aber wohl nicht der Fall sein)
Also bei 16 Bit mußt du's wohl packen und ein paar Füllbits einfügen
Delphi-Quellcode:
type
kauf_verk = packed record
art : shortint;
_FB1 : Byte;
tier : smallint;
name : string[15];
_FB2 : Byte;
vorohr : string[15];
_FB3 : Byte;
vermart: string[15];
_FB4 : Byte;
datum : string[10];
adrnr : string[4];
grund : string[30];
end;
Was der Fall sein wird, kannst du wohl nur Testen, oder versuchen auszurechnen
Dateigröße / 92 = ...,0 > packed
Dateigröße / 96 = ...,0 > mit 16 Bit-Ausrichtung (2 Byte)
Dateigröße / 102 = ...,0 > mit 32 Bit-Ausrichtung (4 Byte)
(wenn ich mich nicht verrechnet hab)
oder Dateigröße / Datensatzanzahl (wenn bekannt)
= 92 > packed
= 96 > 16 Bit
= 102 > 32 Bit
...