Visual Studio 解决方案文件 - "Build.0"是什么意思?



在自定义构建配置时,我正在查看我的Visual Studio.sln文件(原因是涉及无法在VS2012中加载的项目的故事太长)。

有人知道构建配置部分的Build.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文件演练的链接也将受到欢迎。和往常一样,MSDN.sln文件的解释有点神秘,似乎并不能完全解释sln文件的这一部分。

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

我不能100%确定(没有找到任何来源来证实我的猜测),但我相信GlobalSection(ProjectConfigurationPlatforms)部分中的条目中的.ActiveCfgBuild.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

如果我将解决方案的"配置"属性设置为"调试",并将"平台"属性设置成"任何CPU",根据上述条目,由于Build.0行,项目将构建,并且"配置"one_answers"平台"特性将设置为"Debug"one_answers"任何CPU"以构建该项目,因为这就是ActiveCfg行在使用配置和平台属性的组合进行构建时向项目发送的内容。

如果我将Configuration属性设置为"Debug",并将Platform设置为"Mixed Platforms",则解决方案将构建项目,但它仍将对Configuration和Platform属性使用"Debug|Any CPU",因为ActiveCfg行表示要发送该属性。

最新更新