Ich habe für Windows eine 32-Bit-
DLL. Kurioserweise habe ich für die Exporte nur eine Lazarus/FreePascal-Headerdatei. Die
Unit begann mit folgendem:
Delphi-Quellcode:
{$IFDEF FPC}
{$MODE objfpc}
{$PACKENUM 4} // GCC on x86 enums have size of 4 bytes
{$PACKRECORDS C}
{$ELSE}
{$ALIGN 4}
{$ENDIF}
{$H+}
Ist das schon einmal korrekt? Ich habe keine Ahnung. Der Quelltext enthält mehrere wilde Typen (Variante Records, Records mit Bitfeldern, Variablen aus einer
DLL laden, ...).
Ich habe hier im Anhang einmal ein "Minimalbeispiel" in welchem sich FreePascal und Delphi-Konsolenanwendung den Quelltext teilen. FreePascal läuft durch, Delphi hat immer eine
Access Violation an der gleichen Stelle.