不同 Build Configuration settings 之间的区别是什么?在Visual Studio中 Any CPU, Mixed Platform, WIN32 etc .
Build Configuration settings
这是一个链接,有助于解释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上设置标志 - 它根本不会改变编译过程的其他方面 .
构建配置名称并不是很有意义 - 如果你在同一个解决方案中有C和C#项目,它们会激增(如果你有移动项目,那么它们会更糟),因为各种类型的项目使用不同的配置名称,所以你结束了很多人 .
我们试图继续删除我们没有使用的所有配置,但有时候当您添加新项目时,这种情况很困难,不需要的配置将被添加回解决方案 .
我的建议是决定你需要什么配置(通过查看其中的实际设置),然后删除其他所有配置 .
正如其他平台已经解释过(即X86为32位,x64仅为64位,'Any CPU'可以在两者中运行) . 我将专注于 Mixed Platform 以及这与 Any CPU 的区别 .
Mixed Platform
Any CPU
Any CPU 处于项目级别设置,在现实世界的解决方案中,我们在一个解决方案下有多个项目,他们的一些项目使用 Any CPU ,但其他人使用 x86 或 x64 构建平台 .
x86
x64
因此,在解决方案级别,将自动选择 Mixed Platform . 这表明在构建/重建解决方案期间,每个项目都基于其选定的平台构建 .
来自:这篇文章 . 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” .
4 回答
这是一个链接,有助于解释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上设置标志 - 它根本不会改变编译过程的其他方面 .
构建配置名称并不是很有意义 - 如果你在同一个解决方案中有C和C#项目,它们会激增(如果你有移动项目,那么它们会更糟),因为各种类型的项目使用不同的配置名称,所以你结束了很多人 .
我们试图继续删除我们没有使用的所有配置,但有时候当您添加新项目时,这种情况很困难,不需要的配置将被添加回解决方案 .
我的建议是决定你需要什么配置(通过查看其中的实际设置),然后删除其他所有配置 .
正如其他平台已经解释过(即X86为32位,x64仅为64位,'Any CPU'可以在两者中运行) . 我将专注于
Mixed Platform
以及这与Any CPU
的区别 .Any CPU
处于项目级别设置,在现实世界的解决方案中,我们在一个解决方案下有多个项目,他们的一些项目使用Any CPU
,但其他人使用x86
或x64
构建平台 .因此,在解决方案级别,将自动选择
Mixed Platform
. 这表明在构建/重建解决方案期间,每个项目都基于其选定的平台构建 .来自:这篇文章 . https://social.msdn.microsoft.com/forums/vstudio/en-US/81c72e8b-6335-4bf4-b7c0-b5c322edcaee/mixed-platforms-vs-any-cpu