我有一个 VS10 项目文件 (.csproj)。我正在使用命令行中的 MSBuild 构建这个项目。我有一个简单的问题,长期以来我一直试图弄清楚。这些命令行参数有什么区别:-
1. >MSBuild MyProg.csproj /p:Configuration="Release"
2. >MSBuild MyProg.csproj /p:Platform="AnyCPU" /p:Configuration="Release"
3. >MSBuild MyProg.csproj /p:Platform="x86" /p:Configuration="Release"
在 csproj 文件中,我有这个 PropertyGroup 标签
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
我想知道在命令行参数中指定平台和不指定平台时有什么区别。我一直在尝试使用命令行中的详细参数 /v:d 对此进行调查,但除了每个构建的平台不同外,我找不到任何区别。
当我不在命令行中传递平台时,平台会是什么?当我通过 x86 而不是 AnyCPU 时会发生什么?
谢谢