【发布时间】:2011-08-19 13:36:06
【问题描述】:
我有一个在 Visual Studio 2010 下构建但使用 .Net 3.5 的 C++/CLI 应用程序。根据需要,我手动编辑了我的项目文件以添加值为 3.5 的 TargetFrameworkVersion,并且在我处于 x86(32 位)模式时能够毫无问题地构建它。但是,当我切换到以 x64(64 位)模式构建它时,出现以下错误:
错误 MSB8014:找不到执行路径 (C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\x86_amd64)。
我确实安装了 VS 2008 (9.0),但是 bin 文件夹下没有 x86_amd64 目录。我试图通过添加这个文件夹(以及由于目标文件中的下一行而失败的 amd64 文件夹)来欺骗它,然后我得到了错误:
致命错误 LNK1112:模块机器类型“X86”与目标机器类型“x64”冲突
我无法弄清楚,因为我的项目没有明确的链接。我将与之交互的 C# 程序集切换为在 x64(而不是任何 CPU)中构建,但无济于事。
仅供参考:一切都在 32 位模式下正确构建。如果我切换到 .Net 4.0 (v100),一切都可以在 64 位模式下正确构建。我在发布和调试模式下都遇到了同样的错误。
任何想法都将不胜感激。
【问题讨论】:
-
你的构建操作系统是多少位?
-
操作系统是 Windows 7 - 64 位
标签: visual-studio-2010 .net-3.5 c++-cli 32bit-64bit