<WinUser.h>
中:
/*
* Window field offsets for GetWindowLong()
*/
#define GWL_WNDPROC (-4)
...
#ifdef _WIN64
#undef GWL_WNDPROC
#undef GWL_HINSTANCE
#undef GWL_HWNDPARENT
#undef GWL_USERDATA
#endif /* _WIN64 */
#define GWLP_WNDPROC (-4)
可以看出确实没定义。
解决方法:
GetWindowLongPtr
和 SetWindowLongPtr 分别替换
GetWindowLong
和 SetWindowLong
GWL_WNDPROC替换为
GWLP_WNDPROC,
GWL_USERDATA替换为GWLP_USERDATA