我已经安装了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,重新启动,问题仍然存在!的帮助!


当前回答

我最终通过完全卸载VS2012 RC解决了这个问题,然后完全卸载VS2010,然后重新安装VS2010。

花了很长时间,但我现在又可以在VS2010中编译c++项目了。

其他回答

我还没有安装Visual Studio 2012,但我仍然在Visual Studio 2010中得到这个错误。我在安装Visual Studio 2010 SP1后解决了这个问题。

我使用Windows SDK进行核心Win32编程,由于“未知的”原因安装了。net 4.5。我已经卸载了它,并安装了4.0,就像之前的答案一样,是的,它也适用于我。

我只是大吃一惊,我不得不使用无用的。net框架来使用SDK构建Win32应用程序。

我最终通过完全卸载VS2012 RC解决了这个问题,然后完全卸载VS2010,然后重新安装VS2010。

花了很长时间,但我现在又可以在VS2010中编译c++项目了。

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

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

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

我将启用增量链接设置为“No (/ Incremental: No)”,但它对我不起作用。

接下来我改变了:

Project Properties 
   -> Configuration Properties 
       -> General
          -> Platform Toolset -> "Visual Studio 2012 (v110)"

这对我来说很有用:)