我创建了一个vs 2010 win32程序(操作系统:Win 8-64位)
然后,我尝试通过以下方式将此win32程序转换为x64:
Configuration Manager -> new solution platform (select x64) -> copy settings from win32
使用vs2010创建了一个基于之前win32程序的新x64程序。
然而,当我尝试编译和运行x64程序时,出现了一个错误:
msvcprtd.lib(MSVCP100D.dll) : 致命错误 LNK1112: 模块机器类型“X86”与目标机器类型“x64”冲突
通过重命名msvcprtd.lib的win32版本和x64版本,我发现程序仍在使用win32 msvcprtd.lib。
我检查并发现msvcprtd.lib位于$(VCInstallDir)lib\amd64。此外:
库目录 -> 继承值包含了所有必要的目录(我想):
$(VCInstallDir)lib\amd64
$(VCInstallDir)atlmfc\lib\amd64
$(WindowsSdkDir)lib\x64
我还检查了程序使用的第三方库和dll文件,它们都是x64版本。
我的问题是为什么该程序仍在使用win32 msvcprtd.lib文件,如何解决这个问题?