VC++调试错误的解决方案

这篇文章主要用来记录使用Visual Studio过程中,出现的各种error,并提供自己当时解决的方案。
但是,一个error可能由不同原因引起的,文中案例仅供大家参考。

  1. nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
    解决:将工程设置为Using MFC in static library

  2. cannot open file "mfc42u.lib"
    解决:安装vc时没有安装Unicode版本(默认是不安装的),可以下载几个库文件copy到vc98/MFC/Lib,或者build选择非Unicode版本编译(也可以在Set Configuation中配置Unicode相关删除)

  3. fatal error RC1107: invalid usage; use RC /? for Help
    解决:查看vc++目录是否有问题
    <1>将附加额外目录暂时移至工程末尾
    <2>把其中的反斜线(/)替换为双反斜线(//)或者替换为斜线

  4. LINK : fatal error LNK1000: Internal error during IncrBuildImage
    解决:<1> 项目(Project)->属性(Property)->链接器(Linker)->常规(General) 下面的“启用增量链接(Enable Incremental Linking)”,将“是(/INCREMENTAL)”改为“否(/INCREMENTAL:NO)”。不过这又引入了另外一个警 告:FormatCom.obj : warning LNK4075: 忽略“/EDITANDCONTINUE”(由于“/INCREMENTAL:NO”规范)。
    <2> 选择项目,属性(Property pages)->配置属性(Configuration Properties) ->C/C++,修改“调试信息格式(Debug Information Format)”为“程序数据库(Program Database(/Zi))”即可。

  5. LINK1123:failure during conversion to COFF:file invalid or corrup
    解决:将C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe目录下的cvtres.exe文件用C:\Windows\Microsoft.NET\Framework\v4.0.30319\cvtres.exe代替

  6. error c2064:项不会计算为接受1个参数的函数
    解决:可能是运算符乘号未写

  7. error c2228:"Grade"左边必须有类/结构/联合
    解决:不一定是左边的类结构问题,前一语句缺少“;”也会导致这个错误。

  8. error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
    解决:vc6.0运行没问题,vs2005之后默认Unicode字符集,可将其改为Muti-bye。

  9. error LNK2019:无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用
    解决:建错工程了,应该是win32 application(window应用程序)
    win32 application和win32 Console Application区别:
    win32 application就是普通的常见的窗口应用程序
    win32 Console Application就是MS-DOS窗口(命令提示符)

  10. error C4996:'sprintf':This fuction or variable may be unsafe
    解决:将‘sprintf’改为‘sprintf_s’,或添加#define _CRT_SECURE_NO_WARNINGS,警告就不会再有了。
    很多函数不进行参数检测(越界类等...),微软担心使用这些会造成内存异常,所以就改写了同样的功能的函数,改写的函数进

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值