Several macros affect the definitions made by and the files it includes. • UNICODE; when defined, this causes the generic text datatype TCHAR to be a synonym of wide character| instead of character (computing)|, and all type-generic API functions and messages that work with text will be defined to the -W versions instead of the -A versions. It is similar to the windows C runtime's _UNICODE macro. • RC_INVOKED defined when the
resource compiler () is in use instead of a C compiler. • WINVER used to enable features only available in newer operating systems. Define it to 0x0501 for
Windows XP, and 0x0600 for
Windows Vista. • WIN32_LEAN_AND_MEAN used to reduce the size of the header files and speed up compilation. Excludes things like
cryptography,
DDE,
RPC, the
Windows Shell and
Winsock. ==Other languages==