链接:错误LNK2001:未解析的外部符号_WinMainCRTStartup

时间:2011-03-30 02:38:27

标签: c++ winapi visual-c++

我正在为游戏开发学习c ++我正在读一本书并使用win32 api所以我试图编译我的程序测试

 #include <windows.h>

        int WINAPI WinMain(HINSTANCE hInsance,HINSTANCE hPrevInstance,PSTR cmdLine,int showCmd){
            MessageBox(0,"First Win32 Program","Window Tittle",MB_OK);
            }

我得到了:

LINK:错误LNK2001:未解析的外部符号_WinMainCRTStartup

我是win32编程的新手,所以我不知道我在使用windows7 thnx :)的错误在哪里!

3 个答案:

答案 0 :(得分:2)

当我意识到我忘记添加源

时,我遇到了同样的问题并得到了解决

答案 1 :(得分:1)

您可以使用/ENTRY:WinMain覆盖默认名称,也可以使用/MT进行编译,以便编译器以链接器抓取运行时库(提供条目)的方式标记目标文件点)。

运行时库入口点执行一些很好的操作,比如运行全局构造函数,设置一个全局异常处理程序,这样就可以在未捕获的异常情况下获得一个对话框,但它绝对没有必要。


注意:如果您不使用库入口点,则没有可用的参数。您必须使用GetCurrentProcessGetCommandLine以及GetStartupInfo等操作系统功能来获取通常作为WinMain参数提供的信息。你还没有使用任何一种。但是在使用自己的入口点时要三思而后行,很多东西都取决于库的初始化,你最好确定你没有使用它。

答案 2 :(得分:-2)

你真的想看看XNA的游戏开发。对于您的第一个应用程序 - 让VC ++ IDE完成繁重的任务。选择New Project,Console App,然后printf“Hello World” - 将为您设置所有默认值 -