Visual studio 2010 Visual Studio解决方案文件-什么是;构建.0“;什么意思?

Visual studio 2010 Visual Studio解决方案文件-什么是;构建.0“;什么意思?,visual-studio-2010,visual-studio,visual-studio-2012,build,solution,Visual Studio 2010,Visual Studio,Visual Studio 2012,Build,Solution,在定制构建配置时,我正在查看我的Visual Studio.sln文件(原因很长,涉及的项目不会在VS2012中加载) 有人知道构建配置部分的构建.0部分是什么意思吗?这是否意味着此项目被勾选为在此构建配置下构建 另外,ActiveCfg与什么相关 {CFHHHA78-C688-40B3-B53A-20C963A6F138}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CFHHHA78-C688-40B3-B53A-20C963A6F138}.Debug|A

在定制构建配置时,我正在查看我的Visual Studio.sln文件(原因很长,涉及的项目不会在VS2012中加载)

有人知道构建配置部分的
构建.0
部分是什么意思吗?这是否意味着此项目被勾选为在此构建配置下构建

另外,
ActiveCfg
与什么相关

{CFHHHA78-C688-40B3-B53A-20C963A6F138}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CFHHHA78-C688-40B3-B53A-20C963A6F138}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CFHHHA78-C688-40B3-B53A-20C963A6F138}.Debug|Mixed Platforms.ActiveCfg = Debug|AnyCPU
{CFHHHA78-C688-40B3-B53A-20C963A6F138}.Debug|x86.ActiveCfg = Debug|Any CPU

也欢迎链接到.sln文件演练。和往常一样,这个有点神秘,似乎不能完全解释sln文件的这一部分。

是的,你的直觉是对的。这确实意味着项目在构建配置下将其构建选项勾选为Build。我只是通过在一个VisualStudio实例中打开解决方案和在另一个VisualStudio实例的文本编辑器(open with)中打开.sln文件来测试这一点。如果您在第一个选项中更改配置选项并全部保存,您将在第二个选项中看到相应的更改。

我不是100%确定(没有找到任何来源来证实我的猜测),但我相信
.ActiveCfg
Build.0
条目中包含
全局部分(项目配置平台)
节的使用方法如下所述

{3759D495-6929-4371-92B1-E0C0F5215051}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3759D495-6929-4371-92B1-E0C0F5215051}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3759D495-6929-4371-92B1-E0C0F5215051}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{3759D495-6929-4371-92B1-E0C0F5215051}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
如果我将解决方案的配置属性设置为“Debug”,并将平台属性设置为“Any CPU”,根据上述条目,由于
build.0
行,项目将生成,并且构建该项目的配置和平台属性将设置为“Debug”和“Any CPU”,因为这是
ActiveCfg
行在使用配置和平台属性的组合构建时要发送给项目的内容


如果我将配置属性设置为“Debug”,将平台设置为“Mixed Platforms”,那么解决方案将构建项目,但它仍将使用“Debug | Any CPU”作为配置和平台属性,因为这是
ActiveCfg
行要发送的内容。

依赖它是非常危险的,未来的VS版本可能会让你崩溃。相当确定这是直接连接到Build+Configuration Manager对话框的。您必须进行实验。您的第一个问题答案-是,它被勾选为在当前配置下构建。回答第二个问题-可以回答它。这也是我的理解,“项目是在构建配置下构建的”,这意味着什么?它与ActiveCfg有何不同?在VS中的Configuration Manager中,您可以为每个解决方案配置和平台对选择要构建的项目以及使用的项目配置和平台。如果“项目[勾选]要构建”,则在构建解决方案配置时将构建该项目。如果不是,它就不会是。嗯,我想知道当ActiveCfg与Build.0不同时,它会做什么。更重要的是,当有一个以上的Build.x配置时,它会做什么,比如Build.0和Build.1,这是一个非常好的解释。我一直想知道这到底是怎么回事。我将通过一些更改和提交来确认您的理解,并尽量记住发布另一条评论。。。