Porting from 32-bit Windows to 64-bit Windows should not, by itself, create any problems for distributed
applications, whether they use Remote Procedure Calls (RPC) directly or through DCOM. The RPC programming model
specifies well-defined data sizes and integer types that are the same size on each end of the connection. Also, in
the LLP64 abstract data model developed for 64-bit Windows, only the pointers expand to 64 bits—all other
integer data types remain 32 bits. Because pointers are local to each side of the client/server connection and are
usually transmitted as NULL or non-NULL markers, the marshaling engine can handle different pointer sizes on
either end of a connection transparently.
However, backward compatibility issues arise when you add new data types or methods to an interface, change old
data types, or use data types inappropriately. The following topics discuss how to avoid these situations (when
possible) and how to design robust workarounds when it is not possible to avoid them.
In this Section
Related Sections
If you are not already familiar with the new data types, working environment, and API changes for 64-bit
Windows, see Getting Ready for 64-bit
Windows.
Send comments about this topic to Microsoft
Build date: 10/8/2009