您的位置:首页 > 其它

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

2014-03-11 11:15 204 查看
我的程序前一天还是好的,这次添加了两个cpp就坏掉了,将这两个cpp移除以后也没有用,在网上搜到的什么配置属性中,嵌入清单:原来是“是”,改成“否”也不解决问题,

搜到了一个博文说是cvtres.exe出了问题。于是也去c盘下面搜了一下,呼啦啦搜出来十几个cvtres.exe,参考博文里说用winsxs什么的下面的新的去替换比较有用,我用

C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7601.17514_none_ba1c770af0b2031b 目录下的cvtres.exe

替换掉了

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin 目录下的cvtres.exe

再rebuild就好了。

参考的博文链接和文章如下:

http://blog.chinaunix.net/uid-20385936-id-3506149.html

连接器LNK是通过调用cvtres.exe完成文件向coff格式的转换的,所以出现这种错误的原因就是cvtres.exe出现了问题。

在电脑里面搜索一下cvtres.exe,发现存在多个文件,使用最新的cvtres.exe替换老的文件即可,替换之前记得备份一下,如果不对,可以替换回来。

例如:我的电脑里面安装了vs2010,最近更新了系统,打了一些补丁,结果就出现这种错误了。在电脑里面搜索发现

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin

C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7600.16385_none_ba476986f05abc65

C:\Windows\Microsoft.NET\Framework\v4.0.30319

这三个路径里面都有cvtres.exe文件,于是我尝试使用第二个路径里面的文件替换第一个路径的文件,问题解决。

参考资料如下:
http://stackoverflow.com/questions/10888391/link-fatal-error-lnk1123-failure-during-conversion-to-coff-file-invalid-or-c/14144713#14144713
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: