AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Umstieg Delphi 2009 -> XE3 (32/64 bit)
Thema durchsuchen
Ansicht
Themen-Optionen

Umstieg Delphi 2009 -> XE3 (32/64 bit)

Ein Thema von Alex_ITA01 · begonnen am 8. Jan 2013 · letzter Beitrag vom 22. Jan 2013
Antwort Antwort
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 8. Jan 2013, 12:47
Hallo,
ich wollte meine aktuellen Projekte von Delphi 2009 nach XE3 portieren (mit der 14 Tage Testversion).
Natürlich will ich die Vorzüge des 64bit Compilers nutzen und bin auch schon recht weit beim Umstieg denke ich

Ich wollte jetzt gerne zwei Sachen fragen (hoffentlich schimpft kein Moderator )

1) Gibt es ein Compilerschalter um zu erkennen, ob ich als 32bit oder 64bit compilere? Ich muss nämlich bestimmte DLL-Aufrufe in der 64bit Umgebung raus nehmen weil ich nur die entsprechende 32bit DLL dazu habe

2) Gibt es generell Anpassungen, die man machen "sollte" beim Umstieg von 32bit auf 64bit? Das Projekt lässt sich unter 64bit compilieren aber ich wollte gerne wissen, ob ihr vielleicht ein paar Tipps/Anregungen habt was man am Programm ändern sollte um bestimmte Sachen zu verbesseren oder zu optimieren bei der 64bit Nutzung. Vielleicht manche Datentypen anpassen für Zugriffsgeschwindigkeiten oder ähnliches meine ich...

Ich hoffe ihr könnt mir hier kurz weiterhelfen.
Danke und viele Grüße
Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Horst0815

Registriert seit: 23. Mai 2011
Ort: Görlitz
150 Beiträge
 
Delphi XE Starter
 
#2

AW: Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 8. Jan 2013, 13:34
1. {$ ifdef cpux86 }
  Mit Zitat antworten Zitat
christophspaeth

Registriert seit: 7. Mär 2008
73 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 8. Jan 2013, 13:44
Hallo Alex,

1) 64 bit kannst du zur Compilezeit mit dem define CPUX64 erkennen, zur Laufzeit kann man sizeof(pointer) als Anhaltspunkt hernehmen.

2) Ohne dass das jetzt ansatzweise vollständig sein sollte: Stellen, an denen Integer und Pointer aufeinander gecastet/zugewiesen wurden (z.B. diverse Tag oder Data properties) sind problematisch, in der VCL wurden die Tags aber glaube ich alle auf NativeInt geändert. Auch problematisch sein können konstante Ausdrücke, wenn z.B. anstelle sizeof(Pointer) einfach eine 4 im Code steht oder je nachdem könnte $7FFFFFFF oder $FFFFFFFF etc. nicht mehr das ausdrücken, was ursprünglich gemeint war, zumindest wenn ein Teil der Variablen auf Native(U)Int umgestellt wurde.

Ich habe bis jetzt aber selber kaum 64 bit-Anpassungen gemacht, bin also für Ergänzungen/Berichtigungen dankbar

Gruß
Chris
Christoph Späth
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.481 Beiträge
 
Delphi 10.1 Berlin Professional
 
#4

AW: Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 8. Jan 2013, 17:00
Hier gibt es ein paar Informationen zur 32bit nach 64bit Umstellung von Embarcadero selbst (die deutsche Übersetzung hat ein paar Fehler wie z.B. vergessene "nicht")
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#5

AW: Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 21. Jan 2013, 15:43
Hi zusammen,
zu dem Punkt 1 habe ich mal eine Frage.

{$IFDEF cpux86}
Mir kommt das so vor, als wenn das nicht der Compilerschalter für 32/64Bit Anwendung ist, sondern die vom eingesetzten Rechner vorgegebene Prozessorarchitektur (32/64bit). Korrigiert mich, falls ich falsch liege?! Gibt es eigentlich eine Liste der möglichen Compilerschalter oder woher wisst ihr diesen?

Viele Grüße
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#6

AW: Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 21. Jan 2013, 16:13
Ich nehme immer {$IFDEF Win32} und {$IFDEF Win64} um Quelltext für 32Bit und 64Bit zu unterscheiden.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.015 Beiträge
 
Delphi 12 Athens
 
#7

AW: Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 21. Jan 2013, 16:20
Gibt es eigentlich eine Liste der möglichen Compilerschalter oder woher wisst ihr diesen?
Vordefinierte Bedingungen
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#8

AW: Umstieg Delphi 2009 -> XE3 (32/64 bit)

  Alt 22. Jan 2013, 07:55
Danke ihr zwei
Nehme jetzt auch {$IFDEF Win64} als Compilerschalter.

Viele Grüße
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz