Microsoft Office(word excel powerpoint)打开时出现Windows Installer正在准备安装对话框及LNK1123: 转换到 COFF 期间失败

本文详细介绍了在Visual C++开发过程中遇到的LINK1123错误的解决方案,包括修改项目属性、处理不同版本cvtres.exe冲突及正确替换文件的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在写Visual C++代码,做一套仪器仪表OCX控件。

编译时,经常出现讨厌的"LINK1123: 转换到 COFF 期间失败"错误
网上介绍的解决问题的方法如下:

  1. 删除cvtres.exe文件,cvtres.exe在Visual Studio 2010的目录是:C:\Program Files
    (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe

  2. 修改项目属性:项目\属性\配置属性\清单工具\输入和输出\嵌入清单:原来是“是”,改成“否”。

  3. 因为系统中存在两个cvtres.exe文件,一个是VS 2010的,一个是.net
    4.0的,因为版本不同导致VS不知道使用哪一个,解决办法是查看两个版本的cvtres.exe那个版本高,保留高版本的那个。 cvtres.exe在.net的安装目录是:C:\Windows\Microsoft.NET\Framework\v4.0.30319
    (.NET 4.5)中的cvtres.exe

  4. 卸载.NET 4.5,重装.NET 4.0

经测试,第二种办法(修改项目属性)不好用,1、3好用,4不现实,因为会造成其他使用4.5版本的.net的应用出错。

但1和3也会导致一个问题,当.net的cvtres版本高于VS的版本时,如果直接删除VS目录中的cvtres.exe,打开Microsoft Office时(无论是word excel powerpoint)会出现Windows Installer正在准备安装,然后就出现Visual Studio 2010安装程序,如果取消此安装,会在下次打开office时继续倔强的出现此安装程序。反正微软会倔强的重新安装回它自己的cvtres.exe。
如果你等待此安装结束,office不再出现讨厌的Windows Installer,但VS会报错LINK1123。

好吧,解决办法是,如果.net的cvtres高于VS的,直接把.net的cvtres.exe拷贝一份到VS的相应目录中。VS就不会再倔强的重新安装,也不会再出现LINK1123错误,Office也不会在出现Windows Installer。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

steventian72

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值