超级菜鸟题
我是初学者
今遇到这么个问题向大家请教
我写了一个非常简单的“HELLO WORLD”程序,没想到却写不出EXE文件
请大家看看程序有没有什么毛病
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <windowsx.h>
int WINAPI WinMain(HINSTANCE hinstance,
HINSTANCE hprevinstance,
LPSTR lpcmdline,
int ncmdshow)
{
MessageBox(NULL, "Threr are only 1 Program!",
"DDD!", MB_OK | MB_ICONEXCLAMATION);
return (0);
}
问题点数:100、回复次数:8Top
1 楼ytweiwei(又穷又丑农村户口!!!!)回复于 2002-04-13 15:20:38 得分 0
有没有搞错啊? 这个程序的入口竟然是WinMain ?Top
2 楼MaiWang(MaiWang)回复于 2002-04-13 15:24:53 得分 0
应该好使啊?
你包含头文件了?
程序自身的头文件可曾包含?
Top
3 楼pop4444()回复于 2002-04-13 15:24:58 得分 0
没有搞错
的确是WINMAIN
而且它在编译时是可以通过且没有错误
但是一旦写EXE时总是出现这样的错误提示
Linking...
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
Results
1.exe - 2 error(s), 0 warning(s)Top
4 楼Lovell(不畏浮云遮望眼,飞来峰上有晴天)回复于 2002-04-13 15:35:36 得分 0
用以下代码就可以了:
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <windowsx.h>
int main()
{
MessageBox(NULL, "Threr are only 1 Program!",
"DDD!", MB_OK | MB_ICONEXCLAMATION);
return (0);
}
不需要用WinMain。再写Dll会MFC自己调用时可以用WinMain,可是
MFC会将其自动处理好的,要调试C程序直接在.cpp文件中写main函数
就可以了,它就是入口!
Top
5 楼rengo(攀梯)回复于 2002-04-13 15:36:43 得分 100
VC 以为你编的是console程序
改为windows程序:Project->setting选择Link,在最下面的文本框找到
/subsystem:console /incremental:yes
改为/subsystem:windows/incremental:yes
Top
6 楼goldhill()回复于 2002-04-13 15:37:59 得分 0
??Top
7 楼java_hero(...)回复于 2002-04-13 15:41:19 得分 0
的确是工程不对,重新生产工程把代码拷过去试试,我以前遇过这种情况Top
8 楼pop4444()回复于 2002-04-13 15:46:09 得分 0
to rengo()谢谢
分加上
以后我再有问题请您多多关照!!!Top




