共用方式為


MSBuild 保留屬性

更新:2007 年 11 月

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 項目可能具有值為 A;B;C 的 MSBuildDefaultTargets 屬性。

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

MSBuildExtensionsPath

Program Files 目錄下的 MSBuild 資料夾。此位置可以用來放置自訂目標檔。例如,可以將目標檔安裝於 \Program Files\MSBuild\MyFiles\Northwind.targets,然後使用下列 XML 匯入專案檔中。

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

MSBuildStartupDirectory

叫用 MSBuild 所在目錄的絕對路徑。

這可讓您移至專案樹狀結構的任何位置,並建置該位置以下的所有項目,而無須在每個目錄中建立 "dirs.proj" 類型的檔案。相反地,您只需要一個專案,如這個範例的 c:\traversal.proj:

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

然後在樹狀結構的任何位置輸入:

msbuild c:\traversal.proj

請參閱

概念

MSBuild 屬性

其他資源

MSBuild 參考