我照书写的最简单窗口程序编译连接没错,但运行是未响应
代码如下::::#include <windows.h>
LRESULT CALLBACK MainWndProc(HWND,UINT,WPARAM,LPARAM);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
char szClassName[]="MainWClass";
WNDCLASSEX wndclass;
//用描述窗口的参数填充WNDCLASSEX结构
wndclass.cbSize=sizeof(wndclass);
wndclass.style=CS_HREDRAW|CS_VREDRAW;
wndclass.lpfnWndProc=MainWndProc;
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.hInstance=hInstance;
wndclass.hIcon=::LoadIcon(NULL,IDI_APPLICATION);
wndclass.hCursor=::LoadCursor(NULL,IDC_ARROW);
wndclass.hbrBackground=(HBRUSH)::GetStockObject(WHITE_BRUSH);
wndclass.lpszClassName=NULL;
wndclass.lpszClassName=szClassName;
wndclass.hIconSm=NULL;
//注册这个窗口类
::RegisterClassEx(&wndclass);
//创建主窗口
HWND hwnd=::CreateWindowEx(0,
szClassName,
"adfsgdfgtrsfadsfae",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL);
if(hwnd==NULL)
{
::MessageBox(NULL,"nihao","wrong",MB_OK);
return -1;
}
//显示窗口,刷新窗口客户区
::ShowWindow(hwnd,nCmdShow);
::UpdateWindow(hwnd);
//从消息队列中取出消息,交给窗口函数处理,直到GetMessage返回FALSE,结束消息循环
MSG msg;
while(::GetMessage(&msg,NULL,0,0))
{
//转化键盘消息
::TranslateMessage(&msg);
//将消息发送到相应的窗口函数
::DispatchMessage(&msg);
}
//当GetMssage返回FALSE时程序结束
return msg.wParam;
}
LRESULT CALLBACK MainWndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM IParam)
{
char szText[]="i don't like it";
switch(message)
{
case WM_PAINT://窗口客户区需要重画
{
HDC hdc;
PAINTSTRUCT ps;
//使无效的客户区变有效,并取得设备环境句柄
hdc=::BeginPaint(hwnd,&ps);
//显示文字
::TextOut(hdc,10,10,szText,strlen(szText));
::EndPaint(hwnd,&ps);
return 0;
}
case WM_DESTROY://正在销毁窗口
//向消息队列投递一个WM_QUIT消息,促使GetMessage函数返回0.结束消息循环
::PostQuitMessage(0);
return 0;
}
//将我们不处理的消息交给系统做默认处理
return ::DefWindowProc(hwnd,message,wParam,IParam);
}
运行后出现停止工作如下
问题签名:
问题事件名称: APPCRASH
应用程序名: 04win32demo.exe
应用程序版本: 0.0.0.0
应用程序时间戳: 4efbc07d
故障模块名称: USER32.dll
故障模块版本: 6.1.7601.17514
故障模块时间戳: 4ce7ba26
异常代码: c0000005
异常偏移: 0000c491
OS 版本: 6.1.7601.2.1.0.256.1
区域设置 ID: 2052
其他信息 1: ba35
其他信息 2: ba35e151c71b2e29d63291f2012ada1f
其他信息 3: 9185
其他信息 4: 91857e02edbb47ffe375444c58ff3089
这代码是我亲手写的,写了半个小时居然不对。。。。。求解释啊啊啊~