L'ensemble de la gamme 4D est aujourd'hui disponible en version 64 bits :
- 4D Developer Edition 64 bits (macOS et Windows)
- 4D Volume Desktop 64 bits (macOS et Windows)
- 4D Server 64 bits (macOS et Windows)
Ces versions permettent à vos applications 4D monopostes ainsi qu'aux applications 4D distantes de tirer pleinement parti des systèmes d'exploitation 64 bits. Les matrices de certification disponibles sur le site Internet de 4D fournissent la liste des OS certifiés avec les versions 64 bits de 4D.
Le principal avantage de l'architecture 64 bits est qu'une RAM de taille plus importante peut être adressée. En outre, l'implémentation de cette architecture nous a donné l'opportunité de prendre en charge des fonctionnalités puissantes comme les Process 4D préemptifs (multithread), de moderniser les impressions ainsi que les d'éditeurs d'états rapides et d'étiquettes, ou encore de faire bénéficier vos applications des Animations d'objets natives (4D 64 bits sous OS X).
Les plug-ins et composants suivants peuvent être chargés et exécutés par 4D Server, 4D Developer Edition ou 4D Volume Desktop en 64 bits :
- 4D for OCI
- 4D Internet Commands
- 4D ODBC Pro et le pilote 4D ODBC Driver
- 4D Progress
- 4D SVG
- 4D Widgets
- 4D Write Pro Interface
4D View et 4D Write
4D View et 4D Write sont des plug-ins 32 bits et ne peuvent être utilisés qu'avec des versions 32 bits de 4D. 4D propose des versions 64 bits non-exécutables de ces plug-ins pour permettre aux développeurs de les charger et de travailler en 64 bits (macOS ou Windows) et de compiler/déployer pour les versions 32 bits.
Les plug-ins 32 bits ne sont pas chargés par 4D Server 64 bits mais peuvent toutefois être stockés dans le dossier Plugins du serveur et distribués sur les postes distants, sans initialisation.
Plug-ins tiers
Le composant Altura Mac2Win a été entièrement retiré des versions 64 bits de 4D. Par conséquent, si vous utilisez un plug-in tiers, vérifiez auprès de votre fournisseur qu'il est compatible avec les versions 64 bits de 4D.
Les applications 4D destinées aux architectures 64 bits sont des versions spécifiques, dédiées à cet environnement (elles ne fonctionnent pas sur un OS 32 bits). Dans le contexte client/serveur, toute application distante (32 bits ou 64 bit, macOS ou Windows) peut se connecter à un 4D Server 64 bits dans la mesure où la version appropriée du code de la base est disponible sur le serveur (voir le tableau ci-dessous).
En mode interprété, les mêmes bases de données 4D peuvent être exécutées par une application 4D en 64 bits ou 32 bits (serveur ou locale). Le développement est identique, quelle que soit l'application utilisée (hormis en ce qui concerne les limitations décrites dans la section Spécificités des applications 64 bits).
En mode compilé, les bases de données doivent avoir été compilées pour les processeurs adéquats : 64 bits pour pouvoir être exécutées par une application 4D 64 bits, et 32 bits pour pouvoir être exécutées par une application 4D 32 bits Une base de données compilée uniquement en 32 bits et qui ne contient pas de code interprété ne peut pas être exécutée par une application 4D 64 bits, et inversement. Vous pouvez compiler votre base de données pour une architecture spécifique ou pour les deux. Pour plus d'informations sur la compilation, reportez-vous ci-dessous au paragraphe Compilation 64 bits.
Vue générale de l'architecture 4D 64 bits:

Le tableau suivant décrit les principes de compatibilité en fonction des différents environnements d'exécution de 4D et du code de la base :
| Code disponible | 4D 32 bits | 4D 64 bits |
4D Server 64 bits | interprété | OK | OK(*) |
| compilé uniquement en 64 bits | - | OK(*) |
| compilé en 32 bits et en 64 bits | OK | OK(*) |
4D Server 32 bits | interprété | OK | OK(*) |
| compilé uniquement en 32 bits | OK | - |
| compilé en 32 bits et en 64 bits | OK | OK(*) |
Base locale | interprété | OK | OK |
| compilé uniquement en 32 bits | OK | - |
| compilé uniquement en 64 bits | - | OK |
| compilé en 32 bits et en 64 bits | OK | OK |
(*) Avec la version 32 bits de 4D Server (toutes plates-formes) et la version 64 bits de 4D Server pour Windows, vous devez vous assurer que la couche réseau ServerNet est activée côté serveur, puisque l'ancienne couche réseau n'est pas disponible sur les versions 64 bits de 4D Developer. Pour plus d'informations, reportez-vous au paragraphe Nouvelle couche réseau ServerNet (compatibilité).
Les applications 4D peuvent être compilées pour des processeurs 32 bits et 64 bits. Pour cela, vous devez utiliser l'option Compilation multi-clible (32 bits et 64 bits) disponible dans la page "Compilateur" des Propriétés de la base :

Lorsque cette option est cochée, le compilateur inclut le code 64 bits et le code 32 bits dans les fichiers .4DC et .4DB. Ces fichiers peuvent alors être exécutés avec un 4D Server 32 bits ou 64 bits. Par défaut, cette option n'est pas cochée.
La prise en charge de l'architecture OSX 64 bits a nécessité la modification du compilateur intégré de 4D. Par conséquent, seules les bases de données compilées avec 4D v15 ou ultérieure (Note : la modification du compilateur est effective depuis 4D v14 R3) peuvent être exécutées sous OSX 64 bits. Cela signifie que :
- si vous voulez utiliser des bases 4D existantes sous OSX 64 bits en mode compilé, vous devez les recompiler avec 4D v15 ou ultérieure,
- si vos bases utilisent des composants compilés, vous devez recompiler les composants avec 4D v15 ou ultérieure.