写得第一个WINDOW程序,看一下哪错了

lin12345 2008-12-08 12:09:19
#include<windows.h>

LONG WINAPI WndProc(HWND,UINT,WPARAM,LPARAM);

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,
LPSTR lpszCmdLine,int nCmdshow)
{
WNDCLASS wc;
HWND hwnd;
MSG msg;

wc.style=0;
wc.lpfnWndProc=(WNDPROC)WndProc;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hInstance=hInstance;
wc.hIcon=LoadIcon(NULL,IDI_WINLOGO);
wc.hCursor=LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
wc.lpszMenuName=NULL;
wc.lpszClassName="MyWndClass";

RegisterClass(&wc);
hwnd=CreateWindow(
"MyWndClass",
"SDK Application",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
HWND_DESKTOP,
NULL,
hInstance,
NULL
);

ShowWindow(hwnd,nCmdshow);
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)
{
PAINTSTRUCT ps;
HDC hdc;

switch(message) {

case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
Ellipse(hdc,0,0,200,100);
EndPaint(hwnd,&ps);
return 0;

case WM_DESTROY:
PostQuitMessage(0);
return 0;
}

return DefWindowProc(hwnd,message,wParam,lParam);
}



--------------------Configuration: first - Win32 Debug--------------------
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/first.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

first.exe - 2 error(s), 0 warning(s)


这是链接错误,怎么回事






...全文
148 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hityct1 2008-12-08
  • 打赏
  • 举报
回复
项目类型不对,建一个win32项目,再把代码考入。
youxizhizuo 2008-12-08
  • 打赏
  • 举报
回复
我晕。还有犯这样的错误的。哎。
hxingz 2008-12-08
  • 打赏
  • 举报
回复
建立Win32 Application 工程啊!!!
codejian 2008-12-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 keven1868 的回复:]
工程类型不对,把编译选项里的/subsystem:console改成/subsystem:windows,再修改一下相关引用就行了
[/Quote]

孙鑫老师的VC++资料中已经介绍到了这种情况!
youxizhizuo 2008-12-08
  • 打赏
  • 举报
回复
RegisterClass(&wc);
我说的呢。什么时候窗口函数出了他。原来定义类了。
youxizhizuo 2008-12-08
  • 打赏
  • 举报
回复
WNDCLASS wc;

这是啥玩意?看不懂。
zgy1353246 2008-12-08
  • 打赏
  • 举报
回复
我一般是把/subsystem:console直接删了,也能正常运行,嘿嘿
skye_ld 2008-12-08
  • 打赏
  • 举报
回复
你建的工程不对 这个程序 需要选择的是 wim32 application 的类型 在输入程序代码 就可以了
梦之安魂曲 2008-12-08
  • 打赏
  • 举报
回复
在linker属性里面加上window 窗口的dll文件也可以。
keven1868 2008-12-08
  • 打赏
  • 举报
回复
工程类型不对,把编译选项里的/subsystem:console改成/subsystem:windows,再修改一下相关引用就行了
本文主要探讨了JavaScript中window onload的书写时机。对于页内式JS代码,script在head内必须写,在body结束前不用写;外链式JS代码,不管script位置都要写。还解释了window.onload管用的原因,以及不建议把script写在之后。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧