Moin Leute
Entschuldigt, dass ich diesen alten Bug wieder ausgrabe. Ich habe das Thema für meine
DLL-Schnittstelle benötigt. Meine Lösung:
Eine Include-Datei (DLLdef.inc):
Delphi-Quellcode:
{$IFDEF Ver1}
a : Byte;
b : AnsiString;
{$ENDIF}
{$IFDEF Ver2}
c : Byte;
d : AnsiString;
{$ENDIF}
{$IFDEF Ver3}
e : Byte;
f : AnsiString;
{$ENDIF}
Und den Code in der
Unit:
Delphi-Quellcode:
type
{$DEFINE Ver1}
TVer1 = packed record
{$INCLUDE DLLdef.inc}
end;
{$DEFINE Ver2}
TVer2 = packed record
{$INCLUDE DLLdef.inc}
end;
{$DEFINE Ver3}
TVer3 = packed record
{$INCLUDE DLLdef.inc}
end;
Im Code verhält sich das dann wie erwartet.