Genau das gleiche Problem habe ich jetzt auch bei XE7, wenn ich die 32-Bit-Version als 64-Bit laufen lassen möchte. Kompilieren geht, aber Programm stürzt sofort ab. Gibt es hierfür inzwischen nähere Erkenntnisse?
Wie kann man "die 32-Bit-Version als 64-Bit laufen lassen"? Meintest du nich vielmehr 64-Bit-Kompilat? Also du entwickelst und testest deine Anwendung mit 32 Bit und am Ende erstellst du aus demselben Code eine 64-Bit-Anwendung, die dann abstürzt?
Also ich hab's weder mit XE2 noch mit XE7 je erlebt, muß allerdings dazusagen, daß ich mit beiden immer nur sporadisch arbeite. Manche Dinge scheinen mit 64-Bit ein wenig anders zu laufen. So hatte ich seinerseits von Hathor und dem schönen Günter
den Tip bekommen, in OnCreate des Hauptformulars folgede
IfDefs einzutragen (gemeint ist nicht das mit der Caption):
Delphi-Quellcode:
Saved8087CW := Default8087CW;
{$IFDEF WIN64}
Self.Caption := GLD.Programmtitel + '64-Bit-Version';
System.Set8087CW($133f);
{$ELSE}
Self.Caption := GLD.Programmtitel + '32-Bit-Version';
System.Set8087CW(Saved8087CW);
{$ENDIF}
Danach ist mein 64-Bit-Kompilat nicht mehr abgestürzt. Mir ist natürlich klar, daß es sich bei dir um eine andere Fehlermeldung handelt, aber ich wollte nur darauf hinweisen, daß man für 64 Bit nicht immer denselben Code verwenden kann wie für 32 Bit.