MSBuild 予約済みのプロパティ

MSBuild には、プロジェクト ファイルに関する情報と MSBuild のバイナリに関する情報を格納する一連の予約済みプロパティが用意されています。 これらのプロパティは、他の MSBuild プロパティと同じように評価されます。 たとえば、MSBuildProjectFile プロパティを使用するには、次のように入力します。

$(MSBuildProjectFile)

予約済みのプロパティ

次の表を使用して、MSBuild 予約済みプロパティを説明します。

プロパティ

説明

MSBuildProjectDirectory

プロジェクト ファイルがあるディレクトリの絶対パスは、たとえば、C:\MyCompany\MyProduct のようになります。

MSBuildProjectFile

ファイル名の拡張子を含むプロジェクト ファイルの完全なファイル名は、MyApp.proj のようになります。

MSBuildProjectExtension

ピリオドを含むプロジェクト ファイルの名前の拡張子は、.proj のようになります。

MSBuildProjectFullPath

プロジェクト ファイルの絶対パスと完全なファイル名は、C:\MyCompany\MyProduct\MyApp.proj のようになります。

MSBuildProjectName

ファイル名の拡張子のないプロジェクト ファイルの名前は、MyApp のようになります。

MSBuildBinPath

現在使用されている MSBuild バイナリが存在するフォルダーの絶対パスは、C:\Windows\Microsoft.Net\Framework\v2.0 のようになります。 このプロパティは、MSBuild ディレクトリのファイルを参照する必要がある場合に便利です。

MSBuildProjectDefaultTargets

Project 要素の DefaultTargets 属性で指定されるターゲットの完全な一覧。 たとえば、次の Project 要素の MSBuildDefaultTargets プロパティの値は A;B;C となります。

<Project DefaultTargets="A;B;C" >

MSBuildExtensionsPath

\Program Files\ フォルダーまたは \Program Files (x86) フォルダーの下にある MSBuild サブフォルダー。 このパスは常に、現在の実行場所のウィンドウと同じビットの Program Files を指します。 たとえば、64 ビット コンピューター上の 32 ビット ウィンドウの場合、このパスが指すのは Program Files (x86) フォルダーです。 64 ビット コンピューター上の 64 ビット ウィンドウの場合、このパスが指すのは Program Files フォルダーです。 MSBuildExtensionsPath32 および MSBuildExtensionsPath64 も参照してください。

この場所は、カスタム ターゲット ファイルを格納するために役立ちます。 たとえば、ターゲット ファイルを \Program Files\MSBuild\MyFiles\Northwind.targets にインストールし、次の XML でプロジェクト ファイルにインポートできます。

<Import Project="$(MSBuildExtensionsPath)\MyFiles\Northwind.targets"/>

メモ   MSBUILDLEGACYEXTENSIONSPATH 環境変数を null 以外の値に設定すると、MSBuildExtensionsPath の動作を以前のバージョンで有効にすることができます。

MSBuildExtensionsPath32

\Program Files\ フォルダーまたは \Program Files (x86) フォルダーの下にある MSBuild サブフォルダー。 このパスは常に、32 ビットの Program Files フォルダーを指します。 たとえば、32 ビット コンピューターの場合、このパスが指すのは Program Files フォルダーです。 64 ビット コンピューターの場合、このパスが指すのは Program Files (x86) フォルダーです。 MSBuildExtensionsPath および MSBuildExtensionsPath64 も参照してください。

MSBuildExtensionsPath64

\Program Files\ フォルダーの下にある MSBuild サブフォルダー。 このパスは常に、32 ビットの Program Files フォルダーを指します。 (64 ビット コンピューターの場合)。 32 ビット コンピューターの場合、このパスは空白です。 MSBuildExtensionsPath および MSBuildExtensionsPath32 も参照してください。

MSBuildStartupDirectory

MSBuild が起動されるフォルダーの絶対パス。

これを使用すると、プロジェクト ツリーの任意の場所に移動して、その下にあるすべての内容をビルドできます。各ディレクトリに "dirs.proj" 形式のファイルを作成する必要はありません。 次の例に示すように、c:\traversal.proj という名前の 1 つのプロジェクトだけが作成されます。

<Project ...>
    <ItemGroup>
        <ProjectFiles  
           Include="$
           (MSBuildStartupDirectory)
           **\*.csproj"/>
    </ItemGroup>
    <Target Name="build">
        <MSBuild    
        Projects="@(ProjectFiles)"/>
    </Target>
</Project>

ツリー上の任意の場所でビルドするには、次のように入力します。

msbuild c:\traversal.proj

参照

概念

MSBuild プロパティ

その他の技術情報

MSBuild リファレンス