错误描述
使用Visual Studio 2010新建一个工程,刚运行时报错:
1>LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
1>------ 已启动生成: 项目: test, 配置: Debug Win32 ------
1>生成启动时间为 2020/1/5 9:43:55。
1>InitializeBuildStatus:
1> 正在对“Debug\test.unsuccessfulbuild”执行 Touch 任务。
1>ClCompile:
1> 所有输出均为最新。
1> 所有输出均为最新。
1>ManifestResourceCompile:
1> 所有输出均为最新。
1>LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
1>
1>生成失败。
1>
1>已用时间 00:00:00.79
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
解决方案
方案1. 修改项目属性
项目—>属性—>配置属性—>清单工具—>输入输出—>嵌入清单,改为“否”。
缺点是每次新建工程都需要如此配置。
方案2. 替换cvtres.exe文件
连接器LNK是通过调用cvtres.exe完成文件向coff格式进行转换,因此该错误是cvtres.exe出现了问题。搜索本机C盘cvtres.exe找到如下结果:
使用较新的cvtres.exe(C:\Windows\Microsoft.NET\Framework\v4.0.30319)替换原来的cvtres.exe(D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin)。
方案3. 删除cvtres.exe文件
直接删除D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin目录下的cvtres.exe文件也能解决报错问题。
本文由VS软件圈(vssoft.net)发布,不代表VS软件圈立场,转载联系作者并注明出处:https://vssoft.net/vsazwt/VS2010anzhuangwenti/2020/0724/2566.html