VS2010提示出错: LINK : fatal error LNK1123: failure during conversion to COFF

1. 在win7下用VS2010, 在win8下用VS2012, 都安装在D盘下, 结果编译之前VS2008的项目时, VS2010提示出错:
LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt

放狗搜, 在Stackoverflow找到解决方案, 之前不带.rc的项目, 直接如下设置就OK:

Project Properties 
   -> Configuration Properties 
       -> Linker (General) 
          -> Enable Incremental Linking -> "No (/INCREMENTAL:NO)"

但是带.rc的就不行,需要安装VS2010 SP1,注意安装sp1将会移除64-bit 编译器,需要安装VS 2010 SP1 compiler pack修复.

但是经过这一步,编译还是出错.

假如还是出错,上面的"Enable Incremental Linking "需改回"YES", 然后搜索:CVTRES.exe, 将会搜索到几个CVTRES.exe, 安装了VS2012之后, VS2010的CVTRES.ex将无法正常工作,所以需要把x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cvtres.exe改为其他文件名,让VS2010调用其他版本的crtres.exe.
更改名字后,即可编译通过.

2. 使用VS2012的另一个问题是,如果用默认设置,编译出来.exe无法在xp下运行,需要设置项目属性

Project Properties 
   -> Configuration Properties 
       -> General
          -> Platform toolset -> "v100"