What is the POINTER_32 macro?
The POINTER_32 macro is a standard Windows SDK macro usually declared in header files BaseTsd.h, Ntdef.h or Winnt.h.
#ifdef (__AXP64__)
#define POINTER_32 _ptr32
#else
#define POINTER_32
#endif
This macro is used as an extension of the MSVC compiler to declare 32-bit pointers in the code that uses both the 32-bit and 64-bit data models. This may be required, for example, when you need to implement interprocess cooperation of a 64-bit program with a 32-bit process. That's why don't replace such pointers with 64-bit ones when porting a 32-bit project if you don't know the context.
References
- Discussion at stackoverflow.com. POINTER_32 - what is it, and why?
- MSDN Library. Common Compiler Errors
0