注册 登录
编程论坛 VC++/MFC

关于API windows的程序

少点BUGS 发布于 2012-12-10 20:49, 586 次点击
#include<windows.h>

int WINAPI WinMain (HINSTANCE hInstance,
                    HINSTANCE hPrevInstance,
                    PSTR szCmdLine,
                    int iCmdShow)

{
    MessageBox (NULL,TEXT("Hello word!"),
        TEXT("HellMsg"),0);
    return 0;
}

为什么在我的vc6.0里编译时没有出错,但连接时会出错呢?
错误为:LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/10.3.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
10 回复
#2
wp2319572012-12-10 20:51
你的编译模式有问题  你想编一个windows程序
但是你编译模式里确是 console模式
#3
wp2319572012-12-10 20:52
看一下  project setting
#4
少点BUGS2012-12-10 20:53
回复 2楼 wp231957
能具体说下是怎么回事吗?
#5
zklhp2012-12-10 20:54
编译选项有问题 建议你建一个工程 这样的话会自动定好那些选项并且会有一个模版 比如这个

只有本站会员才能查看附件,请 登录

#6
少点BUGS2012-12-10 20:55
回复 3楼 wp231957
看seting的什么部分
#7
wp2319572012-12-10 20:56
3楼已经说过了
只有本站会员才能查看附件,请 登录
#8
zklhp2012-12-10 20:57
建立工程 选那个win32 Application 然后选建立一个简单的工程 出来的就是上面我帖的那个东西 然后再写你的代码
#9
少点BUGS2012-12-10 21:12
回复 8楼 zklhp
的确可以。
但为什么不可以直接建立一个空项目呢?书里是先建立一空的项目然后自己输入运行的。
#10
zhangqi_gsts2012-12-11 00:33
这是windows程序,你可能是在控制台下写的
#11
zklhp2012-12-11 09:21
以下是引用少点BUGS在2012-12-10 21:12:28的发言:

的确可以。
但为什么不可以直接建立一个空项目呢?书里是先建立一空的项目然后自己输入运行的。

windows程序要有相应的编译参数 如果你能把空项目的编译参数改成能编译windows的 那也可以建空项目 不过这样一个是麻烦 再一个 新手根本不知道要改哪些东西 正因为这种情况 IDE已经有了一个模板方便你创建windows程序 省得自己建了

有方便的东西 为嘛不用呢 你可以打开这个工程 看看到底需要哪些参数。。。
1