Visual studio MSBuild忽略所需的配置

Visual studio MSBuild忽略所需的配置,visual-studio,msbuild,visual-studio-2019,Visual Studio,Msbuild,Visual Studio 2019,我正在尝试从命令行构建Visual Studio 2019解决方案(虽然是PowerShell脚本),我需要有两个构建—一个用于64位,另一个用于32位 在Configuration Manager中,我向平台添加了x86和x64平台: 在项目属性中,我相应地设置了平台目标: 我正在使用以下命令行使用MSBuild生成: & $msbuildPath ../MyApp.Desktop.sln -t:Rebuild -p:Configuration=Release /p:Platfor

我正在尝试从命令行构建Visual Studio 2019解决方案(虽然是PowerShell脚本),我需要有两个构建—一个用于64位,另一个用于32位

在Configuration Manager中,我向平台添加了x86和x64平台:

在项目属性中,我相应地设置了平台目标:

我正在使用以下命令行使用MSBuild生成:

& $msbuildPath ../MyApp.Desktop.sln -t:Rebuild -p:Configuration=Release /p:Platform=x86
但是它似乎忽略了
/p:Platform
,因为不管我是声明
x86
还是
x64
,它总是在Configuration Manager中构建“活动”平台集。但是,如果我在平台中输入一个无效值(例如x123),构建将失败,因为该值不存在


如何使MSBuild使用所述的
/p:Platform
实际生成?

如果生成sln文件,则应更改解决方案平台而不是项目平台

请尝试以下步骤:

1)首先,删除每个项目平台,并对项目进行清理。只保留平台
任何CPU

2)解决方案平台添加新的
x64
x86
平台

3)关闭VS实例,删除每个项目的
bin
obj
文件夹

然后使用
/p:Platform=x64或x86运行powershell。而且在我这边效果很好。它可以返回
x86
x64
输出文件,而不会出现任何问题

& $msbuildPath ../MyApp.Desktop.sln -t:Rebuild -p:Configuration=Release /p:Platform=x64