Conception d’interfaces compatibles 64 bits

Le portage de Windows 32 bits vers Windows 64 bits ne doit pas, en soi, créer de problèmes pour les applications distribuées, qu’elles utilisent des appels de procédure distante (RPC) directement ou via DCOM. Le modèle de programmation RPC spécifie des tailles de données bien définies et des types d’entiers qui sont de la même taille à chaque extrémité de la connexion. En outre, dans le modèle de données abstrait LLP64 développé pour Windows 64 bits, seuls les pointeurs se développent à 64 bits, tous les autres types de données entiers restent 32 bits. Étant donné que les pointeurs sont locaux de chaque côté de la connexion client/serveur et sont généralement transmis en tant que marqueurs NULL ou non NULL , le moteur de marshaling peut gérer en toute transparence différentes tailles de pointeur à chaque extrémité d’une connexion.

Toutefois, des problèmes de compatibilité descendante surviennent lorsque vous ajoutez de nouveaux types de données ou méthodes à une interface, modifiez d’anciens types de données ou utilisez des types de données de manière inappropriée. Les rubriques suivantes expliquent comment éviter ces situations (lorsque cela est possible) et comment concevoir des solutions de contournement robustes lorsqu’il n’est pas possible de les éviter.

Dans cette section

Si vous n’êtes pas déjà familiarisé avec les nouveaux types de données, l’environnement de travail et les modifications d’API pour Windows 64 bits, consultez Préparation pour Windows 64 bits.