为什么message cracker是这样定义的?
/* void Cls_OnSize(HWND hwnd, UINT state, int cx, int cy) */
#define HANDLE_WM_SIZE(hwnd, wParam, lParam, fn) ((fn)((hwnd), (UINT)(wParam), (int)(short)LOWORD(lParam), (int)(short)HIWORD(lParam)), 0L)
#define FORWARD_WM_SIZE(hwnd, state, cx, cy, fn) (void)(fn)((hwnd), WM_SIZE, (WPARAM)(UINT)(state), MAKELPARAM((cx), (cy)))
上面是windowsx.h里对message crack的定义,为什么该函数定义为4个参数,而在HANDLE_WM_SIZE的宏里却有5个参数,最后多加了个0L??发现windowsx.h里不少都是这样定义的,有什么作用?
还有message cracker有什么作用?是不是在API直接编程里用的?好像好像平时见到的都是message map啊!