คือ วาดภาพแล้วเส้นมันไม่ต่อเนื่องครับแก้ไขตรงไหนดี

#include<windows.h>

#define INITGUID
#define CREATETIME 100

HWND hWindow = NULL;
void InitApp(HINSTANCE);
int PASCAL WinMain(HINSTANCE, HINSTANCE, LPSTR, int);
LRESULT FAR PASCAL WinProc(HWND, UINT, WPARAM, LPARAM);

void InitApp(HINSTANCE hinst)
{
WNDCLASS WinClass;
WinClass.style = CS_HREDRAW | CS_VREDRAW;
WinClass.lpfnWndProc = WinProc;
WinClass.cbClsExtra = 0;
WinClass.cbWndExtra = 0;
WinClass.hIcon = NULL;/*LoadIcon(0, IDI_APPLICATION);*/
WinClass.hCursor = LoadCursor(0, IDC_ARROW);
WinClass.hbrBackground = (HBRUSH)(COLOR_WINDOW);
WinClass.hInstance = hinst;
WinClass.lpszMenuName = NULL;
WinClass.lpszClassName = "BasicWinClass";

if (!RegisterClass(&WinClass))
return;

hWindow = CreateWindow("BasicWinClass", "Paint", WS_OVERLAPPEDWINDOW, 50, 50, 640, 480, NULL, NULL, hinst, NULL);
}

int PASCAL WinMain(HINSTANCE Instance, HINSTANCE PrevInstance, LPSTR CmdLine, int nCmdShow)
{
MSG msg;
InitApp(Instance);
ShowWindow(hWindow, nCmdShow);
UpdateWindow(hWindow);

while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}

PrevInstance = PrevInstance;
CmdLine = CmdLine;
return msg.wParam;
}

LRESULT FAR PASCAL WinProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{
HDC hdc = GetDC(hWindow);
HPEN pen1 = NULL;
switch(Message)
{

case WM_CREATE :
{
SetTimer(hwnd, CREATETIME, 100, NULL);
}break;

case WM_TIMER :
{

}break;

case WM_MOUSEMOVE :
{
int x = LOWORD(lParam);
int y = HIWORD(lParam);
if(wParam & MK_LBUTTON)
{
pen1 = CreatePen(PS_DASH, 10, RGB(0,0,0));
SelectObject(hdc,pen1);
MoveToEx(hdc,x,y,NULL);
LineTo(hdc,x,y);
DeleteObject(pen1);
ReleaseDC(hWindow, hdc);
}
}break;

case WM_PAINT :
{
}break;

case WM_DESTROY :
{
KillTimer(hwnd, CREATETIME);
PostQuitMessage(0);
}break;
}
return DefWindowProc(hwnd, Message, wParam, lParam);
}