方法 : ビルドで環境変数を使用する

プロジェクトをビルドするとき、プロジェクト ファイルまたはプロジェクトを構成するファイルに含まれていない情報を使用してビルド オプションを設定する必要がある場合があります。 通常、この情報は環境変数に格納されます。

時間環境変数の参照

環境変数はすべて、プロパティとして Microsoft Build Engine (MSBuild) プロジェクト ファイルで使用可能です。

注意

プロジェクト ファイルに、環境変数と同じ名前のプロパティが明示的に定義されている場合、環境変数の値はプロジェクト ファイル内のプロパティによって上書きされます。

MSBuild プロジェクトで環境変数を使用するには

  • プロジェクト ファイルで宣言された変数と同様に、環境変数を参照します。 たとえば、次のコードは、BIN_PATH 環境変数を参照します。

    <FinalOutput>$(BIN_PATH)\MyAssembly.dll</FinalOutput>

    環境変数が設定されていない場合は、Condition 属性を使用して、プロパティの既定値を指定することができます。

プロパティの既定値を指定するには

  • プロパティに値がない場合に限り、Condition 属性をプロパティで使用して値を設定します。 たとえば、ToolsPath 環境変数が設定されていない場合に限り、次のコードによって ToolsPath プロパティが c:\tools に設定されます。

    <ToolsPath Condition="'$(TOOLSPATH)' == ''">c:\tools</ToolsPath>

    注意

    プロパティ名は大文字と小文字が区別されないため、$(ToolsPath)$(TOOLSPATH) の両方が同じプロパティまたは環境変数を参照します。

次のプロジェクト ファイルは、環境変数を使用して、ディレクトリの場所を指定します。

<Project DefaultTargets="FakeBuild">  
    <PropertyGroup>  
        <FinalOutput>$(BIN_PATH)\myassembly.dll</FinalOutput>  
        <ToolsPath Condition=" '$(ToolsPath)' == '' ">  
            C:\Tools  
        </ToolsPath>  
    </PropertyGroup>  
    <Target Name="FakeBuild">  
        <Message Text="Building $(FinalOutput) using the tools at $(ToolsPath)..."/>  
    </Target>  
</Project>  

関連項目

[MSBuild ](../msbuild/msbuild.md)
[MSBuild Properties](../msbuild/msbuild-properties.md)

方法: 同じソース ファイルを異なるオプションでビルドする