There was a problem and Parameter printed.
switch ( p_evt->Type ){ case WM_PAINT: printf("WM_PAINT 005: %d *(p_evt->uMsg):%d uMsg: %d \r\n", uMsg, *(p_evt->uMsg), uMsg ); EndPaint(hWnd, &ps); printf("WM_PAINT 006: %d *(p_evt->uMsg):%d uMsg: %d btc.Process %d\r\n", uMsg, *(p_evt->uMsg), uMsg, btc.Processed ); b_Processed = 1; break; case WM_KEYUP: check_invalidate = 1; b_Processed = 1; break; case WM_CREATE: b_Processed = 1; break; case WM_CHAR: b_Processed = 1; break; case WM_CLOSE: b_Processed = 1; break; case WM_COMMAND: b_Processed = 1; break; case WM_KEYDOWN: b_Processed = 1; break; case WM_DESTROY: b_Processed = 1; break; case WM_ENDSESSION: b_Processed = 1; break; case WM_LBUTTONDOWN: b_Processed = 1; break; case WM_LBUTTONDBLCLK: b_Processed = 1; break; case WM_RBUTTONDBLCLK: b_Processed = 1; break; case WM_SIZE: b_Processed = 1; break; default: b_Processed = 2; break; } if ( check_invalidate == 1 ) { printf("InvalidateRect: starts.\r\n"); InvalidateRect( hWnd, NULL, TRUE); check_invalidate = 0; printf("InvalidateRect: ends.\r\n"); } if ( stop_thread_once_second == 1 ) { printf("Sleep startss.\r\n"); Sleep(1000); stop_thread_once_second = 0; printf("Sleep ends.\r\n"); } switch ( b_Processed ) { case 0: break; case 1: return 0; case 2: return DefWindowProc( hWnd, uMsg, wParam, lParam ); default: return 0; }
All any other without cases, Displayed window flag stands, which means all cases should be written almost as switch-case, so, its code must be long, which we can not change.