#include
#include
#include"resource.h"
#define T _T
LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam) {
int answer;
switch (iMsg) {
case WM_DESTROY: 
PostQuitMessage(0);
break;
case WM_COMMAND: 
switch (LOWORD(wParam)) {
case ID_FILENEW:
MessageBox(hwnd, T("새 파일 열겠습니까?"), T("새파일 선택"), MB_OKCANCEL);
break;
case ID_EXIT:
answer = MessageBox(hwnd, T("끝냅니다"), T("종료"), MB_YESNOCANCEL);
if (answer == IDYES)
PostQuitMessage(0);
break;
}
break;
case WM_CREATE: 
break;
}
return DefWindowProc(hwnd, iMsg, wParam, lParam);
}

int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE prevhinstance,
LPSTR lpszCmdLine, int nCmdShow) {
HWND hwnd;
MSG msg;
WNDCLASS wnd;
wnd.style = CS_VREDRAW | CS_HREDRAW;
wnd.cbClsExtra = 0;
wnd.cbWndExtra = 0;
wnd.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
wnd.hCursor = LoadCursor(NULL, IDC_ARROW);
wnd.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wnd.hInstance = hinstance;
wnd.lpfnWndProc = WndProc;
wnd.lpszMenuName = MAKEINTRESOURCE(IDR_MENU4_1);
wnd.lpszClassName = _T("WINDOW PLEASE!");
RegisterClass(&wnd);
hwnd = CreateWindow(_T("WINDOW PLEASE!"), _T("WINDOW PLEASE!"), WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hinstance, NULL);
ShowWindow(hwnd, nCmdShow);
UpdateWindow(hwnd);
while (GetMessage(&msg, hwnd, NULL, NULL)) {
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return (int)msg.wParam;
}

이런식으로 코드를 짰는데
x버튼을 눌러 종료를 해도 완전히 종료되지않고 프로세서에 남고
또 상단 메뉴에서 종료버튼을 눌러 종료하려고해도 이번엔 프로그램조차 종료가 안되네요

이제 첫걸음을 땐것이라 무엇이 문제인지 모르겠습니다.
api프로그래밍 상당히 어렵네요.. 고수분들 답변 부탁드립니다!