游客:  注册 | 登录 | 搜索 | 帮助
3s地带



标题: VC++注册窗口类失败
烈火ivk
疾风
Rank: 4Rank: 4



UID 3918
精华 0
积分 174
帖子 42
现金 164
贡献值 0
阅读权限 40
注册 2007-8-24
VC++注册窗口类失败
老是提示这个错误,如图: 到底什么原因啊,晕!
编译成功:--------------------Configuration: hello - Win32 Debug--------------------
Compiling...
hello.cpp
Linking...

hello.exe - 0 error(s), 0 warning(s)

代码:
#include <windows.h>
LRESULT CALLBACK Wndproc (HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain (HINSTANCE hInstance,
HINSTANCE hPrevInstance,
PSTR szCmdline,
int iCmdshow)
{
static TCHAR szAppName[] = TEXT ("HelloWorld");

static TCHAR lpszTitle[] = TEXT ("My First Windows program");
HWND hwnd;
MSG msg;
WNDCLASS wndclass;
wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = Wndproc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon(NULL,IDI_APPLICATION);
wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = szAppName;
if(!RegisterClass (&wndclass))
{
MessageBox (NULL,TEXT("This program requires windows NT!"),
szAppName,MB_ICONERROR);
return 0;
}
hwnd = CreateWindow (szAppName,TEXT("The Hello program"),WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
hInstance,
NULL );
ShowWindow (hwnd,iCmdshow);
UpdateWindow (hwnd);
while (GetMessage (&msg,NULL,0,0))
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}
return msg.wParam ;
}



LRESULT CALLBACK Wndproc ( HWND hwnd,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
RECT rect;
switch (message)
{
//case WM_CREATE:
//PlaySound ( TEXT ("hmx.mp3"),NULL,SND_FILENAME | SND_ASYNC);
// return 0;
case WM_PAINT:
hdc = BeginPaint ( hwnd,&ps);
GetClientRect ( hwnd,&rect);
DrawText ( hdc,TEXT (" Hello world!"),15,&rect,
DT_SINGLELINE | DT_CENTER | DT_VCENTER);
EndPaint (hwnd,&ps);
return 0;
case WM_DESTROY:
PostQuitMessage (0);
return 0;
}
return DefWindowProc (hwnd,message,wParam,lParam);
}

问题补充:
我的是XP系统

顶部
pxfhrk
强风
Rank: 3



UID 5096
精华 0
积分 144
帖子 35
现金 134
贡献值 0
阅读权限 30
注册 2007-8-24
GetLastError()得到 87参数错误
在wndclass.lpszClassName = szAppName;一句后面加上以下语句
wndclass.hCursor=LoadCursor(NULL,IDC_CROSS);

  
顶部


 
当前时区 GMT+8, 现在时间是 2009-1-9 07:19 清除 Cookies - 联系我们 - 3S地带 - Archiver - WAP - 赣ICP备07006302号
Powered by Discuz! 5.5.0  © Processed in 0.041455 second(s), 6 queries , Gzip enabled