注册 登录
编程论坛 C++教室

程序出现奇怪的错误是什么补丁没打嘛????

虫虫飞ya飞 发布于 2007-01-10 19:30, 757 次点击

错误提示
Compiling...
winmain.cpp
Linking...
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16
Debug/winmain.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

winmain.exe - 2 error(s), 0 warning(s)
下面是代码
#include<windows.h>
#include<stdio.h>
LRESULT CALLBACK WinSunProc(
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);

int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
)
{
WNDCLASS wndcls;
wndcls.cbClsExtra=0;
wndcls.cbWndExtra=0;
wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);
wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);
wndcls.hInstance=hInstance;
wndcls.lpfnWndProc=WinSunProc;
wndcls.lpszClassName="练习";
wndcls.lpszMenuName=NULL;
wndcls.style=CS_HREDRAW|CS_VREDRAW;
RegisterClass(&wndcls);
HWND hwnd;
hwnd=CreateWindow("练习","自己试着做",WS_OVERLAPPEDWINDOW,20,20,600,800,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_CHAR:
char szChar[20];
sprintf(szChar,"char is %d",wParam);
MessageBox(hwnd,szChar,"自己试验",0);
break;
case WM_LBUTTONDOWN:
MessageBox(hwnd,"点击鼠标左键","自己试验",0);
HDC hdc;
hdc=GetDC(hwnd);
TextOut(hdc,0,50,"练习输入",strlen("练习输入"));
ReleaseDC(hwnd,hdc);
break;
case WM_PAINT:
HDC hDC;
PAINTSTRUCT ps;
hDC=BeginPaint(hwnd,&ps);
TextOut(hDC,0,0,"计算机编程",strlen("计算机编程"));
EndPaint(hwnd,&ps);
break;
case WM_CLOSE:
if(IDYES==(MessageBox(hwnd,"是否真的结束?","自己试验",MB_YESNO)))
{
DestroyWindow(hwnd);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}

return 0;
}





[此贴子已经被作者于2007-1-10 19:32:43编辑过]

5 回复
#2
dubaoshi2007-01-10 21:24
编译过了,但链接通不过,不知为何了,顶一下,等待高手解答。
#3
smartwind2007-01-11 17:54
多半是工程类型错误,把工程类型改为windows app就行了
#4
虫虫飞ya飞2007-01-14 22:37
怎么改呢????
#5
虫虫飞ya飞2007-01-19 14:52
高手们给个答复嘛到底哪的事可会是我编译器的事
#6
tyc6112007-01-21 01:14
建工程时选择了“Win32 Application”
1