Platform SDK: Win64 Programming Preview

Win32 API Changes

[This is preliminary documentation and subject to change.]

This section will eventually include all changes made to the Win32 API.

Obsolete Constants

GWL_WNDPROC
GWL_HINSTANCE
GWL_HWNDPARENT
GWL_USERDATA

GCL_MENUNAME
GCL_HBRBACKGROUND
GCL_HCURSOR
GCL_HICON
GCL_HMODULE
GCL_WNDPROC
GCL_HICONSM

DWL_MSGRESULT
DWL_DLGPROC
DWL_USER

New Constants

GWLP_WNDPROC
GWLP_HINSTANCE
GWLP_HWNDPARENT
GWLP_USERDATA
GWLP_ID

GCLP_MENUNAME
GCLP_HBRBACKGROUND
GCLP_HCURSOR
GCLP_HICON
GCLP_HMODULE
GCLP_WNDPROC
GCLP_HICONSM

DWLP_MSGRESULT
DWLP_DLGPROC
DWLP_USER

New Functions

GetClassLongPtr
GetWindowLongPtr
SetClassLongPtr
SetWindowLongPtr

Intrinsics

The following intrinsic functions are provided in Wdm.h:

long _InterlockedAdd(long *, long)
__int64 _InterlockedAdd64(__int64 *, __int64)
long    _InterlockedDecrement(long *)|
__int64 _InterlockedDecrement64(__int64 *)
long    _InterlockedExchange(long *, long)
__int64 _InterlockedExchange64(__int64 *, __int64)
void *  _InterlockedExchangePointer(void **, void *)
long    _InterlockedExchangeAdd(long *, long)
__int64 _InterlockedExchangeAdd64(__int64 *, __int64)
long    _InterlockedCompareExchange (long *, long, long)
__int64 _InterlockedCompareExchange64(__int64 *, __int64, __int64)
void *  _InterlockedCompareExchangePointer (void **, void *, void *)
long    _InterlockedIncrement(long *)
__int64 _InterlockedIncrement64(__int64 *)
 

The xxx64 functions are 64-bit implementations of the long functions.

The following single precision math routines are now intrinsic functions:

float cdecl acosf(float)
float cdecl asinf(float)
float cdecl atan(float)
float cdecl atan2f(float,float)
float cdecl ceilf(float)
float cdecl cosf(float)
float cdecl coshf(float)
float cdecl expf(float)
float cdecl fabsf(float)
float cdecl floorf(float)
float cdecl fmodf(float,float)
float cdecl logf(float)
float cdecl log10f(float)
float cdecl powf(float,float)
float cdecl sinf(float)
float cdecl sinhf(float)
float cdecl sqrtf(float)
float cdecl tanf(float)
float cdecl tanhf(float)