我已经安装了Visual Studio 2012发布预览版,它看起来很好,但现在当我尝试使用Visual Studio 2010编译c++项目时,我得到了以下错误消息:

链接:致命错误LNK1123:转换到COFF期间失败:文件无效或损坏

我不是100%确定,但这似乎与项目中有.rc(资源)文件有关。

我尝试从添加/删除程序和重新启动修复Visual Studio 2010,但这没有效果。

如果我使用Visual Studio 2012 RC来编译c++项目,而设置使用Visual Studio 2010工具集,我也会得到相同的错误。升级到Visual Studio 2011工具集可以解决这个问题(当然,我不想对产品代码这样做)。

更新:我已经卸载了Visual Studio 2012,重新启动,问题仍然存在!的帮助!


当前回答

我通过以下方法解决了这个问题:

在命令提示符中,输入msconfig并按enter。 单击“服务”页签。 寻找“Application Experience”并打勾(即选择此选项以启用)。 单击OK。并在必要时重新启动。

因此,这个问题将永远存在。在没有任何干扰的情况下随机构建和调试你的c++项目。

其他回答

我的问题是,我的PC上有两条路径包含相同的库。两条路径都被添加到“配置属性->连接器->通用”中的“附加库目录”中。删除其中一条路径就解决了问题。

我尝试了几次,最终通过卸载VS2010解决了这个问题。我想我没有卸载所有的文件,这就是为什么它不能工作的第一次。

在VS2012的安装中,据说如果你有VS2010 SP1,你不能在两个程序中工作在同一个项目上。建议只有一个程序。

谢谢!

我在更新。net后遇到了同样的问题: 我先卸载了。net框架, 从visualstudio.com下载visualstudio,选择“repair”。

NET框架自动安装与visual studio ->和现在它工作良好!

我在使用微软Visual Studio 2010终极版时也遇到了同样的问题,这个问题用youtube视频中描述的方法解决了

视频建议将C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin(在我的Win7X64匹配机中)中的文件cvres .exe重命名为cvres -old.exe

即使安装了Service pack,你还是会得到错误,然后尝试删除/重命名C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin文件夹中的cvres .exe。这对我来说很有效。