Window SDK编程中,如何样建立多个窗口,并独立处理每个窗口上的消息

Window SDK编程中,怎么样建立多个窗口,并独立处理每个窗口上的消息。
大家说怎么样做呢?请帮我修改代码。
我想建立多个窗口。然后可以调出来用。每个窗口上的控件都独立每个窗口上的消息。大家说怎么样做呢?

#include   <windows.h>

LRESULT   CALLBACK   WinSunProc(HWND   hwnd,UINT   uMsg,WPARAM   wParam,LPARAM   lParam);

int   WINAPI   WinMain(
    HINSTANCE   hInstance,            
    HINSTANCE   hPrevInstance,    
    LPSTR   lpCmdLine,                    
    int   nCmdShow                            
)
{
WNDCLASS   wndclass;
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.hbrBackground=(HBRUSH)GetStockObject(SYSTEM_FONT);    
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
wndclass.hIcon=NULL;
wndclass.hInstance=hInstance;
wndclass.lpfnWndProc=WinSunProc;
wndclass.lpszClassName= "Windows ";
wndclass.lpszMenuName=NULL;
wndclass.style=CS_HREDRAW   |   CS_VREDRAW;

RegisterClass(&wndclass);

HWND   hwnd;
hwnd=CreateWindow( "Windows ", "WindowsApp ",WS_OVERLAPPEDWINDOW,
0,0,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd);

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

LRESULT   CALLBACK   WinSunProc(
    HWND   hwnd,  
    UINT   uMsg,  
    WPARAM   wParam,  
    LPARAM   lParam  
)
{
switch(uMsg)
{
case   WM_CLOSE:
DestroyWindow(hwnd);
break;
case   WM_DESTROY:
PostQuitMessage(0);  
break;
default:
return   DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return   0;
}



------解决方案--------------------
不好意思,漏了一点,类名需要改动

wndclass.lpszClassName= "Windows2 ";
wndclass.lpfnWndProc=WinOtherProc;

RegisterClass(&wndclass);

hwnd=CreateWindow( "Windows2 ", "Second Window ",WS_OVERLAPPEDWINDOW,
0,0,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);