Let's suppose a click on a normal WS_OVERLAPPEDWINDOW window's title bar, followed by a few mouse drags and a button release.
Summary of messages obtained from Spy :
WM_SYSCOMMAND (SC_MOVE)
WM_MOUSEMOVE (*)
WM_CAPTURECHANGED
WM_ENTERSIZEMOVE
WM_MOUSEMOVE (*)
. . .
WM_MOUSEMOVE (*)
WM_LBUTTONUP (*)
WM_CAPTURECHANGED
WM_EXITSIZEMOVE
WM_SYSCOMMAND (return)
I'm trying to understand the messages with (*). They don't make sense to me since :
1) The mouse movements and the button release are NOT in the window client area. Therefore, instead of WM_MOUSEMOVE and WM_LBUTTONUP, I should have WM_NCMOUSEMOVE and WM_NCLBUTTONUP.
2) If I put a break, on those messages (WM_MOUSEMOVE and WM_LBUTTONUP), in my window procedure, I don't intercept theses mesages while dragging the window's title bar !!!