| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1224 人关注过本帖
标题:最简单的windows 程序,不知道为什么就是不能执行!!
只看楼主 加入收藏
wandd
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2005-5-12
收藏
 问题点数:0 回复次数:6 
最简单的windows 程序,不知道为什么就是不能执行!!

linking... LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/mywin.exe : fatal error LNK1120: 1 unresolved externals Error executing link.exe.

mywin.exe - 2 error(s), 0 warning(s) ///////////////////////////////////////////////////////////////////////

我是菜鸟。 这是我照着抄的一个windows 程序,编译通过了 但是不能构建.exe文件,不能执行.上面是出错信息, 只知道字面什么意思,但不知道含义.到底怎么了 ? 那位高手给讲讲????先谢谢了!!

///////////////////////////////////////////////////////////////////////// 下面是原程序: #include<windows.h>

#include<string.h> #include<stdio.h> LRESULT CALLBACK WindowFunc(HWND,UINT,WPARAM,LPARAM); char szWinName[]="MyWin"; //name of the window. char str[255] =" "; //hold output string.

int WINAPI WinMain(HINSTANCE hThisInst,HINSTANCE hPrevInst, LPSTR lpszArgs,int nWinMode) {

HWND hwnd; MSG msg; tagWNDCLASSEXA wcl; //define a window class. wcl.cbSize=sizeof(tagWNDCLASSEXA); wcl.hInstance = hThisInst; // handle to this instance wcl.lpszClassName=szWinName;//window class name wcl.lpfnWndProc=WindowFunc;// window function wcl.style=0; // default style

wcl.hIcon=LoadIcon(NULL,IDI_APPLICATION);//standard icon wcl.hIconSm=LoadIcon(NULL,IDI_WINLOGO); //SMALL icon wcl.hCursor=LoadCursor(NULL,IDC_ARROW);//CURSOR style

wcl.lpszMenuName=NULL;//no menu wcl.cbClsExtra=0; // no extra wcl.cbWndExtra=0;// no information needed

//make the window white wcl.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);

// register the window class if(!RegisterClassExA(&wcl))return 0;

//now that a window class has been registered ,a window //can be created. hwnd=CreateWindow( wcl.lpszClassName,// name of the window "Processing WM_CHAR Messages",//title WS_OVERLAPPEDWINDOW,//window style -normal CW_USEDEFAULT,// CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, HWND_DESKTOP, // NO PARENT WINDOW NULL, // NO MENU hThisInst, // handle of this instance of program NULL //no additional arguments ); // display the window ShowWindow(hwnd,nWinMode); UpdateWindow(hwnd);

//create the message loop while(GetMessage(&msg,NULL,0,0)) { TranslateMessage(&msg);// DispatchMessage(&msg); //return cotrol to window 98 }

return msg.wParam;

} // this function is called by window 98 an is passed message // from the message queue

LRESULT CALLBACK WindowFunc(HWND hwnd,UINT message, WPARAM wParam,LPARAM lParam) { HDC hdc;

switch(message){ case WM_CHAR: hdc=GetDC(hwnd); TextOut(hdc,1,1," ",3); printf(str,"%c",(char)wParam); TextOut(hdc,1,1,str,strlen(str)); ReleaseDC(hwnd,hdc); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hwnd,message,wParam,lParam); }

return 0; }

搜索更多相关主题的帖子: windows exe mywin 
2005-05-13 18:33
kakaaka
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-5-2
收藏
得分:0 
Project/settings/link下把subsystem:console改为subsystem:windows
2005-05-16 14:45
wandd
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2005-5-12
收藏
得分:0 
  知道了。真是谢谢啊!!!!!!!!!!
2005-06-22 22:49
wandd
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2005-5-12
收藏
得分:0 
怎么回出现这种情况啊??请二楼的讲解讲解啊??拜托了??
2005-06-22 22:51
lky2005524
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-7-17
收藏
得分:0 
说一下这个程序是干什么的。谢谢

2005-07-17 16:10
zzb_ks
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2005-7-6
收藏
得分:0 
因为你用的是windows的程序路口WINAPI()而不是console的main()控制台入口

2005-07-20 21:04
zzb_ks
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2005-7-6
收藏
得分:0 
我原来也一直背着问题困扰了好久!!!

2005-07-20 21:05
快速回复:最简单的windows 程序,不知道为什么就是不能执行!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015052 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved