1.问题描述

做开源项目时,碰到VS2010报错如下:
MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 
Debug\jk.exe : fatal error LNK1120: 1 个无法解析的外部命令;
开始以为是汉化的问题,因为这个错误指向的是找不到WinMain函数,所以用了英文版的试了下,依旧报错:
error LNK2001: unresolved external symbol _WinMain@16 debug/main.exe:fatal error LNK 1120:1 unresolved externals 
error executing link.exe;

2.原因分析

产生这个问题的真正原因是c++语言运行时找不到适当的程序入口函数,一般情况下,如果是windows程序,那么WinMain是入口函数,在VS2010中新建项目为“win32项目”如果是dos控制台程序,那么main是入口函数,在VS2010中新建项目为“win32控制台应用程序”。而如果入口函数指定不当,很显然c++语言运行时找不到配合函数,它就会报告错误。

3.解决办法

3.1 如果我们需要的是windows程序

Step1.菜单中选择 Project->Properties, 弹出Property Pages窗口
Step2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS.

Step3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)

3.2 如果我们需要的是控制台程序

Step1.菜单中选择 Project->Properties, 弹出Property Pages窗口
Step2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_WINDOWS, 添加_CONSOLE.
Step3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为CONSOLE(/SUBSYSTEM:CONSOLE)

MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16相关推荐

  1. MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainC

    查看全文 http://www.taodudu.cc/news/show-1217149.html 相关文章: PCL1.8.0+Windows+VS2013配置 正规方程的推导过程 (多变量线性回归 ...

  2. MSVCRTD.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main,函数 “int __cdecl invoke_main(void)“ (?invo

    MSVCRTD.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main,函数 "int __cdecl invoke_main(void)&qu ...

  3. C++:MSVCRTD.lib(crtexe.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStart...

    在VS2013中Build一个C++程序报这个错,解决方案如下: 在解决方案管理器中选择该项目,项目/属性/连接器/系统/子系统 把控制台 (/SUBSYSTEM:CONSOLE)改为 窗口 (/SU ...

  4. 【vs2019MFC】msvcrtd.lib(exe_main.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 “int __cdecl invoke_mai

    遇到这样的问题,是编译环境出了问题.我看B站上面的教学视频用的是vs2013版本的,在创建文件的时候选择的是win32项目而不是win32 控制台项目. 但是vs2019创建新项目的时候,默认创建的是 ...

  5. error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCR... 2011年08月05日 09:08:15

    经过测试,能解决问题 error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCR... 一,问题描述 MSVCRTD.lib(crtexew.obj) ...

  6. CyAPI.lib(CyAPI.obj) : error LNK2019: 无法解析的外部符号...

    1>------ 已启动生成: 项目: S_BulkLoop, 配置: Debug Win32 ------ 1>生成启动时间为 2014/3/14 17:52:26. 1>Init ...

  7. VS2015 error LNK2019 无法解析的外部符号 _WinMain@16,该符号在函数 int __cdecl invoke_main(void)

    前言 上一篇文章中,为了编译OpenCV的示例代码,然后搭建环境, 最后想直接运行示例demo,我在创建新工程的时候,直接创建了一个win32窗口项目,然后环境配置完成后,将opencv 的示例代码k ...

  8. error LNK2019 无法解析的外部符号 _WinMain@16,该符号在函数 “int __cdecl invoke_main(void)“

    如果是windows程序,按以下配置 右键工程名, 打开属性,依次找到以下路径: ![在这里插入图片描述](https://img-blog.csdnimg.cn/683710cc43e44fdbbe ...

  9. MSVCRTD.lib(crtexe.obj) : error LNK2019

    MSVCRTD.lib(crtexe.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStart 中被引用 解决办法: 右键点击--&g ...

最新文章

  1. 写高质量的代码,永不言晚!
  2. php sql alert,SQL ALTER
  3. (转载)机器学习知识点(十二)坐标下降法(Coordinate descent)
  4. 详解Linux的压缩解压缩命令
  5. mysql网络异常_mysql运行过程中因网络或者数据库原因导致的异常
  6. sqlserver连接及设置
  7. linux的yum命令无法使用在哪里下载_Linux 知识分享:为Linux的cp和mv命令添加进度条...
  8. Python 项目实践三(Web应用程序)第一篇
  9. 虚拟化VMware ESXi 6.7服务器安装配置
  10. 经典排序:第k个元素(快排和双向扫描法)
  11. ADO中最重要的对象有三个:Connection、Recordset和Command
  12. Embarcadero.ERStudio安装
  13. emu8086:如何把数组里的值全部变为FFFF
  14. sqlite3 二进制读取
  15. css中img间有空隙
  16. SQL实际问题——列的替换和汇率打折问题
  17. 用HTML和CSS3做个鱼,如何使用CSS和D3实现小鱼游动的交互动画(附代码)
  18. Ubuntu怎么念?
  19. 如何通过命令行使Linux设备进行网页认证(WEB认证)
  20. JS两个日期之间计算时间差(返回:天数,小时,分钟,秒数)

热门文章

  1. tablelayout的使用
  2. DNS服务器详解--------基础篇
  3. 转 23种开发模式一点就通
  4. SpringMVC+HibernateValidator,配置在properties文件中的错误信息回显前端页面出现中文乱码
  5. [转载自简书] ASPNetCore上传大文件碰到的一些问题总结
  6. 面试重点:设计模式(二)——创建模式
  7. 【python】self cls
  8. sendmail启动报错
  9. 又见斐波那契~矩阵快速幂入门题
  10. Centos6.5环境中安装vsftp服务