#include<windows.h>
#pragma comment(linker,"/subsystem:\"console\" /entry:\"WinMainCRTStartup\"")
LRESULT CALLBACK MyfWindowProcW(
HWND hWnd,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
switch(message)
{
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProcW(hWnd,message,wParam,lParam);
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
//TCHAR MYCLASS[8]="MYCLASS";
WNDCLASSEX WCEX;
WCEX.cbSize=sizeof(WNDCLASSEX);
WCEX.style=CS_HREDRAW|CS_VREDRAW;
WCEX.lpfnWndProc= DefWindowProc;
WCEX.cbClsExtra=0;
WCEX.cbWndExtra=0;
WCEX.hInstance=hInstance;
WCEX.hIcon=NULL;
WCEX.hCursor=LoadCursor(NULL,IDC_ARROW);
WCEX.hbrBackground=(HBRUSH)(COLOR_WINDOW + 1);
WCEX.lpszMenuName=NULL;
WCEX.lpszClassName="MYCLASS";
WCEX.hIconSm=NULL;
while(0==RegisterClassEx(&WCEX));
HWND hWnd = CreateWindowW(L"MYCLASS", //窗口类的名字
L"welcome", //标题名字
WS_OVERLAPPEDWINDOW,//窗口显示风格
CW_USEDEFAULT, 0, CW_USEDEFAULT, 1080,// 初始位置坐标及大小
NULL, //父窗口句柄
NULL,//菜单句柄或子窗口标识
hInstance, //实例句柄
NULL);
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
MSG msg;
while (GetMessage(&msg, hWnd, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
MessageBox(NULL,(LPCSTR)"我的第一个图形程序",(LPCSTR)"welcome",MB_OK);
return 0;
}
为什么又默认的窗口过程函数DefWindowProc()不会有乱码
而用自定义的会有乱码
使用的是多字节字符集?
使用Uniocde字符集报错
求大佬解答,有什么好的学习API书籍推荐吗?
救救孩子吧