Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 为什么选定的生成配置未应用于项目文件?_Visual Studio_Visual Studio 2012_Configuration_Msbuild - Fatal编程技术网

Visual studio 为什么选定的生成配置未应用于项目文件?

Visual studio 为什么选定的生成配置未应用于项目文件?,visual-studio,visual-studio-2012,configuration,msbuild,Visual Studio,Visual Studio 2012,Configuration,Msbuild,这可能是个不切实际的问题,但我还是来了 所以在VS中,我有一个项目的构建配置从Debug | AnyCpu更改为Release | AnyCpu 现在,这一切都很好,当我通过VS构建项目时,这个配置也会在构建过程中使用 但是,我有时也使用msbuild.exe通过命令生成项目,问题是无论我做什么,都无法更改 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 调试 元素

这可能是个不切实际的问题,但我还是来了

所以在VS中,我有一个项目的构建配置从Debug | AnyCpu更改为Release | AnyCpu

现在,这一切都很好,当我通过VS构建项目时,这个配置也会在构建过程中使用

但是,我有时也使用msbuild.exe通过命令生成项目,问题是无论我做什么,都无法更改

<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
调试
元素。因此,设置生成配置似乎只适用于VS,我基本上必须手动将其添加到项目文件中,以便msbuild.exe使用正确的生成配置


你知道我如何在VS中更改它,这样更改也会更改项目文件吗?

你不需要显式更改它。此字符串是msbuild和VS的“默认配置”-如果未指定$(配置)值-将其设置为调试

如果要使用msbuild生成版本配置,可能需要在命令行中明确指定配置属性或平台体系结构:

msbuild.exe myProject.csproj /p:Configuration="Release" /p:Platform="Any CPU"

默认情况下,如果csproj中未提及任何内容,则构建将采用什么配置?如果根本没有配置和平台,则构建将失败,因此csproj在第一个属性组``调试AnyCPU`中始终具有无条件默认值```