vs2010+转换到 COFF 期间失败: 文件无效或损坏

之前一直用VS2015,最近公司用到VS2010,正确的代码运行时忽然出现“转换到COFF 期间失败:文件无效或损坏”的链接错误。试了好多方法,最终解决了这个问题。

现在罗列一下这几种解决方案:

方案1:
点击“项目”-->“属性”--> “清单工具”,
然后选择"输入和输出’--> ‘嵌入清单’,将后面的‘是’改成‘否’就可以了

但是我采用着这种方法后,普通的控制台程序没有问题,但是MFC或别的程序还是会出现一样的问题。


方案2:

在VS安装目录搜索cvtres.exe

发现有两个cvtres.exe文件,有的网友选择用最新的文件覆盖掉所有旧的cvtres.exe,也有网友是删除旧cvtres.exe的文件。我是将旧cvtres.exe 改名字了,以备恢复环境。注意这两个文件都是一个版本号,但是生成时间只是相差1个小时,选择最新的那个。也有搜索到好多cvtres.exe的 情况,这个就不清楚了,试试如何删除这些文件吧。我的两个文件目录如下:
         D:\ProgramFiles (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64

         D:\Program Files (x86)\Microsoft VisualStudio 10.0\VC\bin

 

方案3:

就是安装新的VS2010 SP1,这种方法也可以解决部分这种问题。
比较麻烦的是这个SP1还比较大,乱七八糟的东西都得补丁上去。

 

方案4:推荐

我觉得这是最好最彻底的方法:

将C:\Windows\WinSxS\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_10.0.17134.1_none_a2b67be9cb145c7a目录下的cvtres.exe复制一份,覆盖vs2010安装目录bin下的cvtres.exe,我的目录是D:\ProgramFiles (x86)\Microsoft Visual Studio 10.0\VC\bin\,问题完美解决,本人就是采用这种方法。

你可能感兴趣的:(C++,编译错误处理)