警告 MSB3270:项目的处理器架构不匹配
Posted
技术标签:
【中文标题】警告 MSB3270:项目的处理器架构不匹配【英文标题】:warning MSB3270: mismatch between the processor architecture of the project 【发布时间】:2014-03-11 10:45:27 【问题描述】:我正在构建一个显示警告的项目:
正在构建的“AMD64”和参考的处理器架构 “DiagLib,版本=0.0.0.0,文化=中性,处理器架构=x86”,“x86”。 这种不匹配可能会导致运行时失败。请考虑更改目标处理器架构 通过配置管理器调整您的项目,以便在您的项目之间调整处理器架构 和引用,或者依赖与目标相匹配的处理器架构的引用 您项目的处理器架构。
我的项目运行良好,但我想删除此警告。
【问题讨论】:
您是否尝试按照警告消息中的建议更改目标处理器? 嗨.. 是的,目标处理器始终设置为仅 x64。我在配置管理器中验证了这一点。有什么办法可以解决这个警告?请帮忙..谢谢.. 在您的警告消息中,processorArchitecture
是 x86。您是否尝试过将目标处理器更改为 x86 ?
我在 VS-2017 中也有此功能,并以 32 位(x86,C 部分非托管)编译复合 C# C++ C 项目。这是最后一个警告.. 我无法解决它:( 没有任何问题,一切正常。
找到了。我通过在项目属性中将目标“任何 CPU”中的***程序 (C#) 设置为目标“x86”来解决警告。这很奇怪,因为 Microsoft 承诺从“任何 CPU”到 x86 CPP/CLI 包装器的有效链接。
【参考方案1】:
见上面的评论。
警告出现在 x64 程序的 C# 部分。它可能设置为“任何 CPU”,因为您的应用程序运行良好。
对于复合 C#/C++ 项目,最好避免在 C# 部分中出现“任何 CPU”。确保在所有 C# 组件上将“x64”明确设置为平台目标,并将“x64”设置为解决方案的当前模式。
【讨论】:
谢谢,这是我的问题。它解决了我的“无法复制文件 ..\singlefilehost.exe,因为找不到它。”太以上是关于警告 MSB3270:项目的处理器架构不匹配的主要内容,如果未能解决你的问题,请参考以下文章
.NET 参考在我的项目(类库)中不可用。获得编译器错误“处理器架构之间的不匹配”
SQLite WinRT 包装器在 Windows phone 8.1 项目中的处理器架构之间提供了不匹配