加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 无法链接Hello World!

发布时间:2020-12-16 09:27:29 所属栏目:百科 来源:网络整理
导读:从书中复制代码的人(编程 Windows第5版): #include windows.hint WINAPI WinMain (HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow){ MessageBox (NULL,TEXT ("Hello,Windows 98!"),TEXT ("HelloMsg"),0) ; return 0 ;} Link到推
从书中复制代码的人(编程 Windows第5版):

#include <windows.h>

int WINAPI WinMain (HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow)
{
     MessageBox (NULL,TEXT ("Hello,Windows 98!"),TEXT ("HelloMsg"),0) ;

     return 0 ;
}

Link到推荐本书的主题.
无法用VS2010编译它.我究竟做错了什么?

Error   1   error LNK2001: unresolved external symbol _WinMainCRTStartup

谢谢.

解决方法

这取决于您如何设置项目.在VS2010中,如果我通过File-> New-> Project,Visual C,Empty Project创建一个新项目,然后添加一个新的C文件,并复制你的代码,它编译并运行就好了.

如果您创建了不同类型的项目,则可能使用不同的链接库.尝试在解决方案资源管理器中右键单击项目,转到Properties-> Linker-> System,并将SubSystem设置为“Windows(/ SUBSYSTEM:WINDOWS)”

Win32 API已经过时了,但如果您想进行本机Windows编程,则大部分都是完全可用的. Windows做了大量工作,以确保只要您遵循文档,旧的API将不会更改.您仍然可以从1992年编译16位Windows 3.1代码并在32位Windows 7上运行它.

编辑:
也可能是在Properties-> C/C++ – > Advanced中,您将Omit Default Library Name设置为“Yes”,您可能希望将其设置为“No”

或者也可以将Properties-> Linker-> Input-> Ignore Default Libs设置为No.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读