问题1:这个问题的根本原因是
转换到 COFF 期间失败: 文件无效或损坏
该对象或资源未能转换为通用对象文件格式 (COFF)。
该工具要求所有输入文件的格式为 COFF。
如果输入文件不是 COFF,LINK 自动将 32 位 OMF 对象转换为 COFF,或该工具运行 CVTRES.EXE 来转换资源文件。
通过检查以下可能的原因进行修复
- 文件已损坏。
- 文件的文件类型无效。
无效类型的一个示例是 16 位 OMF 对象。
产生这个问题一般是安装了多个vs版本造成的。检查CVTRES.EXE,在你的安装目录查找这个文件,右键查看文件属性。
解决的方法可以直接删掉(或者重命名)老版本的文件。主要是bin目录下的那个目录。其他几个没有具体深究。
问题2:msvcprt.lib msvcp140.dll fetal error lnk1112:
模块计算机类型“ X86”与目标计算机类型“ x64”冲突
原因多种多样,理解原理才能更好的解决
可能的原因有
- “链接器-》高级-》目标计算机”设置为"MachineX64 (/MACHINE:X64)"。这个配置项与需要编译的目标不对称。也有可能是配置管理器中平台选择错误。win32选择成x64
- vs本身的配置32与64位混淆了。检查msvcprt.lib在那个目录下 C: \ Program Files(x86)\ Microsoft Visual Studio 14.0 \ VC \ lib \ “到” C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ VC \ lib \ amd64 “。这中情况更难发现与查找