2011-04-18 85 views

回答

34

这里有一个链接,可以帮助解释了构建配置在Visual Studio和其生成的文件设置发现:

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

基本上设置状态是什么平台的组件能够运行。当选择AnyCPU时,生成的DLL被标记为能够在任何地方运行;当选择x86时,生成的DLL被标记为只能在32位系统上运行,并且不会在64位应用程序或进程中运行(但会在64位Windows中运行;等等)等等。

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

+1

此外,请查看此解决方案文件交互链接:http://social.msdn.microsoft.com/forums/vstudio/en-US/81c72e8b-6335-4bf4-b7c0-b5c322edcaee/mixed-platforms-vs- any-cpu – 2014-03-11 18:10:48

+25

虽然这似乎不能解释“混合平台”。 – Menace 2015-05-08 17:05:03

+1

@Menace我的理解(从失去的参考)是,当你打开一个解决方案,其中所有项目没有相同的配置,Visual Studio显示/选择**解决方案**配置作为混合平台。 (如果我能找到最初的参考文献,我会用引文对其进行修改。) – koan911 2015-07-10 06:13:40

15

构建配置名称不意味着很多 - 它们繁殖,如果你有相同的解决方案C++和C#项目(即使你有手机项目太糟糕),因为不同类型的项目使用不同的配置名称,所以你最终得到了很多。

我们尽量保持删除我们不使用的所有配置,但是这是艰苦的工作,有时经常当你添加一个新的项目,不需要的配置将被重新添加到解决方案。

我的建议是决定你所需要的配置(通过看它们内部的实际设置),然后卸下一切。

7

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

当所有在溶液中的项目是同一类型的(例如 C#/ VB项目)的溶液的配置将完全匹配了 项目的配置。一旦你有了一个解决方案, 有不匹配的配置/平台项目,Visual Studio中创建 解决方案级别的配置(S)“混合平台/调试”,并可能 “混合平台/释放”。这些配置只是映射到 单个项目级配置。

举例来说,如果你有一个C#项目和一个C++项目,通常 “混合平台/调试”将映射到“任何CPU /调试”为C#项目 和“的Win32 /调试”为C++项目。

11

正如其他平台已经解释。 (即32位的X86,64位仅用于64位,'任何CPU'都可以在两者中运行)。我将专注于Mixed Platform以及这与Any CPU有何不同。

Any CPU是在项目级设置,其中在现实世界的解决方案,我们有下一个解决方案项目数量,以及它们是我的一些项目中使用Any CPU的,但其他人使用x86x64构建平台的机会。

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