fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt


WTL从低版本到高版本转换2个fatal error处理 2009-09-17 10:27 这两个fatal error是因为从低版本的WTL到高版本的WTL转变后产生的. 错误描述如下: 1>正在编译资源...1>正在编译资源清单...1>正在链接...1>CVTRES : fatal error CVT1100: 重复的资源。type:MANIFEST, name:1, language:0x04091>LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏1>生成日志保存在“file://c:\WTL80_7108_Beta1\Samples\BmpView\Debug\BuildLog.htm”1>BmpView - 2 个错误,1 个警告========== 全部重新生成: 0 已成功, 1 已失败, 0 已跳过 ========== 


临时的解决方法如下: 项目\属性\配置属性\清单工具\输入和输出\嵌入清单:原来是“是”,改成“否”。

不过这个只是临时的方法,根本的方法是,在计算机搜索cvtres.exe,

我搜索到的是

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

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

D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64

D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin   下有

要用新安装的cvtres.exe替换旧的cvtres.exe(可以注意下文件日期)

我的vs 是安装在D:\Program Files (x86)\Microsoft Visual Studio 10.0,  就是复制

C:\Windows\Microsoft.NET下面的cvtres.exe(注意位数)到D:\Program Files (x86)\Microsoft Visual Studio 10.0下面来

就是C:\Windows\Microsoft.NET\Framework64\v4.0.30319到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64

C:\Windows\Microsoft.NET\Framework\v4.0.30319到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin

然后就编译没有这个错误了。

我看了下日期C:\Windows\Microsoft.NET下的是2012年的,D:\Program Files (x86)\Microsoft Visual Studio 10.0下的是2010年的。当然c盘其他地方也有2010年的cvtres.exe,估计是更新Microsoft.NET造成的,把最新的cvtres.exe复制到自己的vs安装目录替换掉旧的就可以了(注意位数)。

我的系统是64位的win7,同时有64位和32位的cvtres.exe。

你可能感兴趣的:(fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt)