error LNK2001: unresolved external symbol _main解决办法

解决外部符号错误:_main,_WinMain@16,__beginthreadex -!t'my`yK  
在创建MFC项目时, 不使用MFC AppWizard向导, 会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有: m1+4#'  
libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main (gd){j  
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 OuR5T>>  
msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinMain@16 *_g+&Us1  
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex }t,6 oT  
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex <u%N(=9  
]wpN"w"  
1. Windows子系统设置错误, 提示: )WA5FzPLw  
libcmtd.lib(crt0.obj) : error LNK2001: unresolved external symbol _main *+oJ(e  
4f{'{1]/
 
Windows项目要使用Windows子系统, 而不是Console, 可以这样设置: *^'y#/Dg  
z !DF-%3|  
[Project] --> [Settings] --> 选择"Link"属性页, Qo!  
在Project Options中将/subsystem:console改成/subsystem:windows   T`H.k"Y{  
Xn?{t*{  
2. Console子系统设置错误, 提示: vwK 7b0M  
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 4Y~E`L0,  
8%P ><"
 
控制台项目要使用Console子系统, 而不是Windows, 设置: *Cl5Y':|h  
sipSn4_  
[Project] --> [Settings] --> 选择"Link"属性页, WveN']q/  
在Project Options中将/subsystem:windows改成/subsystem:console BR4C@Z  
1 vBkC&  
3. 程序入口设置错误, 提示: dy2$&$=  
msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinMain@16 sP.>uExt  
G- (k~1q
 
通常, MFC项目的程序入口函数是WinMain, 如果编译项目的Unicode版本, 程序入口必须改为wWinMainCRTStartup, 所以需要重新设置程序入口: r#~P5[aV  
Os hl6 i  
[Project] --> [Settings] --> 选择"Link"属性页, "1zk_#B*  
在Category中选择Output, p HGRL  
再在Entry-point symbol中填入wWinMainCRTStartup, 即可 >IC}SZ  
F)c[@/.dm  
4. 线程运行时库设置错误, 提示: X;t_- f  
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex AmiBqZTp  
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex sz 23_{c?  
oz! {Fd-
 
这是因为MFC要使用多线程时库, 需要更改设置: L a-Y,1x](  
uAk>h^pbM  
[Project] --> [Settings] --> 选择"C/C++"属性页, '%ET|1#SO  
在Category中选择Code Generation, ;Y-M)k(  
再在Use run-time library中选择Debug Multithreaded或者multithreaded 0v~5<Y'Z  
咸鱼游侠(75374355) 12:11:11 <mW.@e5_  
其中, W_qa?Jv  
Single-Threaded                单线程静态链接库(release版本) Kh4w Q  
Multithreaded                  多线程静态链接库(release版本) |F]g[En 4  
multithreaded DLL              多线程动态链接库(release版本) s-'qYgA6p  
Debug Single-Threaded          单线程静态链接库(debug版本) _ 7w_./y  
Debug Multithreaded            多线程静态链接库(debug版本) <[ ePw  
Debug Multithreaded DLL        多线程动态链接库(debug版本) H8V/O9|(  
9^x@/  
单线程: 不需要多线程调用时, 多用在DOS环境下 /PJ|d5  
多线程: 可以并发运行 clUdag,C  
静态库: 直接将库与程序Link, 可以脱离MFC库运行 X]pEmHl  
动态库: 需要相应的DLL动态库, 程序才能运行 /n{&_:b+q  
release版本: 正式发布时使用 9J;ZZ/3  
debug版本: 调试阶段使用   k9PoFC#k

参考:

http://www.cnitblog.com/ictfly/archive/2009/06/03/21976.html

常见的VC Link错误相关推荐

  1. 最常见的20种VC++编译错误信息

    最常见的20种VC++编译错误信息 作者: 出处: blog 责任编辑:方舟 1.fatal error C1010: unexpected end of file while looking for ...

  2. 出现link错误,说找不到IPHlpApi.Lib(VC6.0)

    开始做网络第二次作业,想运行winpcap给出的示例程序 安装好winpcap驱动,重启,在vc include.lib中设置了wpdpack的目录后运行 报link错误,找不到IPHlpApi.Li ...

  3. 初学Python,我给你总结了常见的17个错误

    点击"视学算法","置顶"公众号 重磅干货,第一时间送达 来源:开源中国 链接:https://www.oschina.net/question/89964_6 ...

  4. R语言ggplot2可视化在散点图中的每个点上绘制两个错误条:常见的是垂直错误条,它对应于Y值点上的错误(error bar),添加与X轴(水平)相关的错误条(error bar)

    R语言ggplot2可视化在散点图中的每个点上绘制两个错误条:常见的是垂直错误条,它对应于Y值点上的错误(error bar),添加与X轴(水平)相关的错误条(error bar) 目录

  5. C语言程序设计 | 动态内存管理:动态内存函数介绍,常见的动态内存错误,柔性数组

    动态内存管理目录: 动态内存函数的介绍 常见的动态内存函数的错误 柔性数组 为什么会有动态内存管理呢 我们在日常使用中,创建一个数组,一个变量时都会开辟空间 如: int a; //在栈上开辟一个四字 ...

  6. 音频开发中常见的四个错误

    以下内容主要为音频开发人员所编写,但同样也能为其他领域并与此相关的开发者带来帮助.在下文当中我将介绍针对开发人员的诊断工具,并分享常见的四个错误以及如何检测问题是否存在并做得更好. 文 / Micha ...

  7. mysql 3种报错_MySQL读取Binlog日志常见的3种错误-阿里云开发者社区

    MySQL读取Binlog日志常见的3种错误 mysqlbinlog: [ERROR] unknown variable 'default-character-set=utf8mb4' 当我们在my. ...

  8. mysql 错误问题_Mysql常见的几个错误问题及解决方法:

    Mysql常见的几个错误问题及解决方法: 1.问题: mysql DNS反解:skip-name-resolve 错误日志有类似警告: 点击(此处)折叠或打开 120119 16:26:04 [War ...

  9. python中常见的几种错误

    python中常见的几种错误: 1.end前面一定加逗号 2.命令输入错误 3.冒号中英文切换 4.命令缩进错误 5.等于号要双等于,否则一个等于号是赋值 6.命令之间正确搭配

最新文章

  1. 【VS实践】代码调试与错误处理
  2. Ubuntu软件安装命令
  3. 成功解决matplotlib绘图的时候,自定义横坐标和纵坐标刻度数值(调整坐标轴刻度间隔)
  4. Python基础训练题-简单数学公式
  5. 初学Golang:web 请求的处理流程
  6. docker 添加端口映射_Docker容器修改端口映射
  7. php nginx 域名重定向,Nginx默认虚拟主机、用户认证、域名重定向
  8. 团结就是力量,TeamCola浅谈创业团队腾云驾雾的归国征程
  9. 如何实现响应式布局?
  10. 节点大小可变的环形队列实现
  11. bzoj 1041: [HAOI2008]圆上的整点
  12. java web filter 入口_springboot 通过@WebFilter(urlPatterns )配置Filter过滤路径
  13. linux 每日学一点《将LINUX变成路由器》
  14. android 删除垃圾文件夹,别再用手机管家清理垃圾了!删除这些文件夹,内存瞬间释放几个G...
  15. 联盟营销最佳实践:提高联盟计划的投资回报率
  16. Inverse design of 3d molecular structures with conditional generative neural networks(2022论文阅读)
  17. 第4章第5节:如何通过表格制作一份漂亮的学习计划表 [PowerPoint精美幻灯片实战教程]
  18. ubuntu服务器mysql等常用配置命令
  19. 大家不用买无线路由器了也可以让手机上WIFI
  20. 简约不简单 细说专票电子化的“四个新”

热门文章

  1. 资料整理方法(写于2021-02-16)
  2. 【转】MyEclipse8优化设置
  3. 爆!出现滑块验证码的原因找到了!
  4. Eclipse is not responding
  5. c语言:判断字符串是否符合手机号码格式
  6. linux下的mkfifo 命令
  7. 神经性脚臭案例整理(三)
  8. 华为交换机难点学习:导出配置文件/同步时间
  9. 病毒Ytnauexu
  10. npm安装electron时报Error: EPERM: operation not permitted, scandir.....