Freigeben über


Reservierte Eigenschaften für MSBuild

MSBuild stellt eine Reihe reservierter Eigenschaften zum Speichern von Informationen über die Projektdatei und die MSBuild-Binärdateien bereit. Diese Eigenschaften werden auf dieselbe Weise ausgewertet wie andere MSBuild-Eigenschaften. Um z. B. die MSBuildProjectFile-Eigenschaft zu verwenden, geben Sie Folgendes ein:

$(MSBuildProjectFile)

Reservierte Eigenschaften

Die folgende Tabelle beschreibt die reservierten MSBuild-Eigenschaften.

Property

Beschreibungen

MSBuildProjectDirectory

Der absolute Pfad des Verzeichnisses, in dem sich die Projektdatei befindet, z. B.: C:\MyCompany\MyProduct.

MSBuildProjectFile

Der vollständige Dateiname der Projektdatei, einschließlich der Dateinamenerweiterung, z. B. MyApp.proj.

MSBuildProjectExtension

Die Dateinamenerweiterung der Projektdatei, einschließlich des Punkts, z. B. .proj.

MSBuildProjectFullPath

Der absolute Pfad und vollständige Dateiname der Projektdatei, z. B. C:\MyCompany\MyProduct\MyApp.proj.

MSBuildProjectName

Der Dateiname der Projektdatei ohne die Dateinamenerweiterung, z. B. MyApp.

MSBuildBinPath

Der absolute Pfad des Ordners, in dem sich die zurzeit genutzten MSBuild-Binärdateien befinden, beispielsweise C:\Windows\Microsoft.Net\Framework\v2.0. Diese Eigenschaft ist nützlich, wenn Sie auf Dateien im Verzeichnis MSBuild verweisen müssen.

MSBuildProjectDefaultTargets

Die vollständige Liste von Zielen, die im DefaultTargets-Attribut des Projekt-Elements angegeben ist. Das folgende Project-Element würde beispielsweise über einen MSBuildDefaultTargets-Eigenschaftswert von A;B;C verfügen.

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

MSBuildExtensionsPath

Der MSBuild-Unterordner im Ordner \Programme\ oder \Programme (x86). Dieser Pfad zeigt immer auf Programme mit der gleichen Bitanzahl wie das Fenster, in dem die Ausführung gerade erfolgt. Für ein 32-Bit-Windows auf einem 64-Bit-Computer ist es beispielsweise der Pfad zum Ordner Programme (x86). Für ein 64-Bit-Windows auf einem 64-Bit-Computer ist es der Pfad zum Ordner Programme. Siehe auch MSBuildExtensionsPath32 und MSBuildExtensionsPath64.

Dieser Speicherort ist nützlich zum Ablegen benutzerdefinierter Zieldateien. Ihre Zieldateien können z. B. unter \Programme\MSBuild\MyFiles\Northwind.targets installiert sein und dann mithilfe folgender XML-Zeile in Projektdateien importiert werden.

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

Hinweis   Sie können die Umgebungsvariable MSBUILDLEGACYEXTENSIONSPATH auf einen Wert ungleich NULL festlegen, um das Verhalten von MSBuildExtensionsPath aus früheren Versionen zu aktivieren.

MSBuildExtensionsPath32

Der MSBuild-Unterordner im Ordner \Programme\ oder \Programme (x86). Dieser Pfad zeigt immer auf den 32-Bit-Programme-Ordner. Für einen 32-Bit-Computer ist es beispielsweise der Pfad zum Ordner Programme. Für einen 64-Bit-Computer ist es der Pfad zum Ordner Programme (x86). Siehe auch MSBuildExtensionsPath und MSBuildExtensionsPath64.

MSBuildExtensionsPath64

Der MSBuild-Unterordner im Ordner "Programme". Dieser Pfad zeigt immer auf den 64-Bit-Programme-Ordner. auf einem 64-Bit-Computer. Für einen 32-Bit-Computer ist dieser Pfad leer. Siehe auch MSBuildExtensionsPath und MSBuildExtensionsPath32.

MSBuildStartupDirectory

Der absolute Pfad des Ordners, in dem MSBuild aufgerufen wird.

Auf diese Weise können Sie von jedem Punkt einer Projektstruktur aus alles erstellen, was sich unterhalb dieses Punkts befinden soll, ohne dass Sie in jedem Verzeichnis "dirs.proj"-Typdateien erstellen müssen. Stattdessen haben Sie nur ein Projekt, wie dieses Beispiel mit dem Namen "c:\traversal.proj":

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

Für die Erstellung an einem beliebigen Punkt in der Struktur müssen Sie Folgendes eingeben:

msbuild c:\traversal.proj

Siehe auch

Konzepte

MSBuild-Eigenschaften

Weitere Ressourcen

MSBuild-Referenz