首页 文章

构建配置:混合平台VS任何CPU

提问于
浏览
74

不同 Build Configuration settings 之间的区别是什么?在Visual Studio中 Any CPU, Mixed Platform, WIN32 etc .

4 回答

  • 13

    这是一个链接,有助于解释Visual Studio及其构建文件中的构建配置设置:

    http://visualstudiohacks.com/articles/visual-studio-net-platform-target-explained/

    http://web.archive.org/web/20151215192101/http://visualstudiohacks.com/articles/visual-studio-net-platform-target-explained/

    基本上,该设置说明了程序集能够运行的平台 . 选择AnyCPU时,生成的DLL被标记为能够在任何地方运行;当选择x86时,生成的DLL被标记为只能在32位系统上运行,并且不能在64位应用程序或进程中运行(但将在64位Windows中运行;)依此类推 .

    这只是在编译的DLL上设置标志 - 它根本不会改变编译过程的其他方面 .

  • 7

    构建配置名称并不是很有意义 - 如果你在同一个解决方案中有C和C#项目,它们会激增(如果你有移动项目,那么它们会更糟),因为各种类型的项目使用不同的配置名称,所以你结束了很多人 .

    我们试图继续删除我们没有使用的所有配置,但有时候当您添加新项目时,这种情况很困难,不需要的配置将被添加回解决方案 .

    我的建议是决定你需要什么配置(通过查看其中的实际设置),然后删除其他所有配置 .

  • 36

    正如其他平台已经解释过(即X86为32位,x64仅为64位,'Any CPU'可以在两者中运行) . 我将专注于 Mixed Platform 以及这与 Any CPU 的区别 .

    Any CPU 处于项目级别设置,在现实世界的解决方案中,我们在一个解决方案下有多个项目,他们的一些项目使用 Any CPU ,但其他人使用 x86x64 构建平台 .

    因此,在解决方案级别,将自动选择 Mixed Platform . 这表明在构建/重建解决方案期间,每个项目都基于其选定的平台构建 .

  • 16

    来自:这篇文章 . https://social.msdn.microsoft.com/forums/vstudio/en-US/81c72e8b-6335-4bf4-b7c0-b5c322edcaee/mixed-platforms-vs-any-cpu

    当解决方案中的所有项目属于同一类型(例如C#/ VB项目)时,解决方案配置将与项目配置完全匹配 . 在具有不匹配的配置/平台的解决方案中的项目之后,Visual Studio将创建解决方案级别配置“混合平台/调试”以及可能的“混合平台/发布” . 这些配置只是单个项目级配置的映射 . 例如,如果您有一个C#项目和一个C项目,通常“混合平台/调试”将映射到C#项目的“任何CPU /调试”和C项目的“Win32 / Debug” .

相关问题