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


当前回答

对于那些正在寻找解决这个问题的OpenGL SuperBible第6源代码示例的人来说,解决方案是在发布中构建而不是调试。在发布版中,所有项目都禁用了增量链接选项。

其他回答

对于那些正在寻找解决这个问题的OpenGL SuperBible第6源代码示例的人来说,解决方案是在发布中构建而不是调试。在发布版中,所有项目都禁用了增量链接选项。

在启用增量链接->“No (/ Incremental: No)”后,它不为我工作,但在我删除rc文件后,它为我工作。

如果你已经安装了Visual Studio 2012 RC,那么它会安装。net 4.5 RC。

卸载。net 4.5 RC,并安装你需要的版本(VS 2010为4.0)。这应该可以解决您遇到的任何问题。

这解决了同样的问题。不需要卸载Visual Studio。

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

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

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

接下来我改变了:

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

这对我来说很有用:)