问题原因:
连接器LNK是通过调用cvtres.exe完成文件向coff格式的转换的,所以出现这种错误的原因就是cvtres.exe出现了问题。
解决方法:
①在C盘,系统盘根目录下搜索 cvtres.exe。
②在Visual Stadio 安装盘根目录下搜索 cvtres.exe。(如我是将vs2010安装在D 盘,我就在D盘搜索 cvstres.exe)。
③搜索出来的cvtres.exe可能有很多个。对比下面这两个路径下的cvtres.exe文件。
C:\Windows\Microsoft.NET\Framework\v4.0.30319\cvtres.exe。
D:\VS2010\VC\bin\cvtres.exe (我的vs装在D盘的)
将最新的那个复制。替换另一个目录下的cvtres.exe文件。
一般来讲,替换之后,重启vs。编译就能正常了。
如果替换之后,编译程序继续报错,如下:LINK : fatal error LNK1158: 无法运行“D:\VS2010\VC\bin\cvtres.exe”
则直接将 这个目录下的cvtres.exe 删除掉即可。