Gemeinsame MSBuild-Projekteigenschaften

Alle Visual Studio-Projekte verfügen unabhängig von ihrem Projekttyp über bestimmte gemeinsame MSBuild-Eigenschaften. Darüber hinaus werden auch einige andere Eigenschaften oft verwendet. Nachfolgend sehen Sie eine Liste gemeinsamer und oft verwendeter Eigenschaften.

Liste gemeinsamer Eigenschaften und Parameter

Eigenschaften- oder Parametername

Beschreibungen

AdditionalLibPaths

Gibt weitere Ordner an, in denen Compiler nach Verweisassemblys suchen sollen.

AddModules

Bewirkt, dass der Compiler dem Projekt, das Sie kompilieren, sämtliche Typinformationen aus den angegebenen Dateien bereitstellt. Diese Eigenschaft ist zum /addModules-Compilerschalter äquivalent.

ALToolPath

Der Pfad, unter dem AL.exe gespeichert ist. Diese Eigenschaft überschreibt die aktuelle Version von AL.exe, um die Verwendung einer anderen Version zu ermöglichen.

ApplicationIcon

Die ICO-Symboldatei, die zum Einbetten als Win32-Symbol an den Compiler übergeben wird. Die Eigenschaft ist zum /win32icon-Compilerschalter äquivalent.

ApplicationManifest

Gibt den Pfad der Datei an, die verwendet wird, um externe Manifestinformationen zur Benutzerkontensteuerung (User Account Control, UAC) zu erzeugen. Bezieht sich nur auf Visual Studio-Projekte für Windows Vista.

In den meisten Fällen wird das Manifest eingebettet. Wenn Sie jedoch COM ohne Registrierung oder ClickOnce-Bereitstellung verwenden, kann das Manifest eine externe Datei sein, die zusammen mit den Anwendungsassemblys installiert wird. Weitere Informationen finden Sie unter der NoWin32Manifest-Eigenschaft in diesem Thema.

AssemblySearchPaths

Eine Liste von Speicherorten, die bei der Verweisassemblyauflösung zur Buildzeit durchsucht werden sollen. Die Reihenfolge der aufgelisteten Pfade ist von Bedeutung, da Pfade weiter oben in der Liste Vorrang vor weiter unten stehenden Pfaden haben.

AssemblyName

Der Name der endgültigen Ausgabeassembly, nachdem das Projekt erstellt wurde.

BaseAddress

Gibt die Basisadresse der Hauptausgabeassembly an. Diese Eigenschaft ist zum /baseaddress-Compilerschalter äquivalent.

BaseOutputPath

Gibt den Basispfad für die Ausgabedatei an. Wenn er festgelegt ist, verwendet MSBuild OutputPath = $(BaseOutputPath)\$(Configuration)\. Beispielsyntax: <BaseOutputPath>c:\xyz\bin\</BaseOutputPath>

BaseIntermediateOutputPath

Gibt den Basiszwischenpfad für die Ausgabedatei an. Beispielsyntax: <BaseIntermediateOutputPath>c:\xyz\obj\</BaseIntermediateOutputPath>

BuildInParallel

Ein boolescher Wert, der angibt, ob Projektverweise bei der Verwendung von Multi-Proc-MSBuild parallel erstellt oder bereinigt werden. Der Standardwert ist true. Das bedeutet, dass Projekte parallel erstellt werden, wenn das System über mehrere Kerne oder Prozessoren verfügt.

BuildProjectReferences

Ein boolescher Wert, der angibt, ob Projektverweise von MSBuild erstellt werden. Legen Sie für den Wert false fest, wenn Sie das Projekt in der integrierten Entwicklungsumgebung (IDE) von Visual Studio erstellen. Legen Sie für den Wert andernfalls true fest.

BaseIntermediateOutputPath

Der Ordner der obersten Ebene, in dem alle konfigurationsspezifischen Zwischenausgabeordner erstellt werden. Der Standardwert ist obj\.

CleanFile

Der Name der Datei, die als "Löschcache" verwendet wird. Der Löschcache ist eine Liste generierter Dateien, die während des Bereinigungsvorgangs gelöscht werden. Die Datei wird vom Buildprozess im Zwischenausgabepfad abgelegt.

Diese Eigenschaft gibt nur Dateinamen an, die keine Pfadinformationen aufweisen.

CodePage

Gibt die für alle Quellcodedateien in der Kompilierung zu verwendende Codepage an. Diese Eigenschaft ist zum /codepage-Compilerschalter äquivalent.

CompilerResponseFile

Eine optionale Antwortdatei, die an die Compileraufgaben übergeben werden kann.

Konfiguration

Die Konfiguration, die Sie erstellen, entweder "Debug" oder "Release".

CscToolPath

Der Pfad von csc.exe, dem Visual C#-Compiler.

CustomBeforeMicrosoftCommonTargets

Der Name einer Projektdatei oder TARGETS-Datei, die vor dem allgemeinen TARGETS-Import automatisch importiert wird.

DebugSymbols

Ein boolescher Wert, der angibt, ob Symbole vom Build generiert werden.

Durch das Festlegen von /p:DebugSymbols=false in der Befehlszeile wird die Generierung von Programmdatenbank-Symboldateien (PDB) deaktiviert.

DefineConstants

Definiert Konstanten für die bedingte Kompilierung. Symbol-Wert-Paare werden durch Semikolons getrennt und mit der folgenden Syntax angegeben:

symbol1 = value1 ; symbol2 = value2

Die Eigenschaft ist zum /define-Compilerschalter äquivalent.

DefineDebug

Ein boolescher Wert, der angibt, ob die DEBUG-Konstante definiert werden soll.

DefineTrace

Ein boolescher Wert, der angibt, ob die TRACE-Konstante definiert werden soll.

DebugType

Definiert den Umfang der zu generierenden Debuginformationen. Gültige Werte sind "full", "pdbonly" und "none".

DelaySign

Ein boolescher Wert, der angibt, ob Sie die Assembly verzögert oder voll signieren möchten.

DisabledWarnings

Unterdrückt die angegebenen Warnungen. Lediglich der numerische Teil des Warnungsbezeichners muss angegeben werden. Mehrere Warnungen werden durch Semikolons getrennt. Dieser Parameter entspricht dem /nowarn-Schalter des vbc.exe-Compilers.

DisableFastUpToDateCheck

Ein boolescher Wert, der nur für Visual Studio gilt. Der Visual Studio-Build-Manager stellt mithilfe des FastUpToDateCheck-Prozesses fest, ob ein Projekt neu erstellt werden muss, um aktuell zu sein. Dieser Prozess ist schneller als die Verwendung von MSBuild. Durch Festlegen der DisableFastUpToDateCheck-Eigenschaft auf true können Sie den Visual Studio-Build-Manager umgehen und die Verwendung von MSBuild zum Bestimmen der Aktualität des Projekts erzwingen.

DocumentationFile

Der Name der Datei, die als XML-Dokumentationsdatei generiert wird. Dieser Name umfasst nur den Dateinamen und weist keine Pfadinformationen auf.

ErrorReport

Gibt an, wie die Compileraufgabe interne Compilerfehler melden soll. Gültige Werte sind "prompt", "send" und "none". Diese Eigenschaft ist zum /errorreport-Compilerschalter äquivalent.

ExcludeDeploymentUrl

Die GenerateDeploymentManifest-Aufgabe fügt dem Bereitstellungsmanifest ein deploymentProvider-Tag hinzu, wenn die Projektdatei eines der folgenden Elemente enthält:

  • UpdateUrl

  • InstallUrl

  • PublishUrl

Mit ExcludeDeploymentUrl können Sie jedoch verhindern, dass das DeploymentProvider-Tag dem Bereitstellungsmanifest hinzugefügt wird, auch wenn die obigen URLs angegeben werden. Hierzu fügen Sie die folgende Eigenschaft der Projektdatei hinzu:

<ExcludeDeploymentUrl>true</ExcludeDeploymentUrl>

HinweisHinweis
ExcludeDeploymentUrl wird nicht in der Visual Studio-IDE verfügbar gemacht und kann nur durch manuelles Bearbeiten der Projektdatei festgelegt werden. Das Festlegen dieser Eigenschaft hat keine Auswirkungen auf die Veröffentlichung innerhalb von Visual Studio. Das heißt, das DeploymentProvider-Tag wird dennoch der von PublishUrl angegebenen URL hinzugefügt werden.

FileAlignment

Gibt die Ausrichtung der Abschnitte der Ausgabedatei in Bytes an. Gültige Werte sind 512, 1024, 2048, 4096 oder 8192. Diese Eigenschaft ist zum /filealignment-Compilerschalter äquivalent.

FrameworkPathOverride

Gibt den Speicherort von mscorlib.dll und microsoft.visualbasic.dll an. Dieser Parameter ist äquivalent zum /sdkpath-Schalter des vbc.exe-Compilers.

GenerateDocumentation

Ein boolescher Parameter, der angibt, ob Dokumentation vom Build generiert wird. Wenn der Wert true ist, werden Dokumentationsinformationen vom Build generiert und zusammen mit dem Namen der ausführbaren Datei oder mit der Bibliothek, die von der Buildaufgabe erstellt wurde, in eine XML-Datei eingefügt.

IntermediateOutputPath

Der vollständige Zwischenausgabepfad wie von BaseIntermediateOutputPath abgeleitet, wenn kein Pfad angegeben wird. Ein Beispiel ist \obj\debug\. Wenn diese Eigenschaft überschrieben wird, hat das Festlegen von BaseIntermediateOutputPath keine Auswirkungen.

KeyContainerName

Der starke Name des Schlüsselcontainers.

KeyOriginatorFile

Der starke Name der Schlüsseldatei.

NoWin32Manifest

Bestimmt, ob der Compiler das Standard-Win32-Manifest in die Ausgabeassembly generiert. Der Standardwert von false bedeutet, dass das Standard-Win32-Manifest für alle Anwendungen generiert wird. Diese Eigenschaft ist zum /nowin32manifest-Compilerschalter von vbc.exe äquivalent.

ModuleAssemblyName

Der Name der Assembly, in die das kompilierte Modul integriert wird. Die Eigenschaft ist zum /moduleassemblyname-Compilerschalter äquivalent.

NoLogo

Ein boolescher Wert, der angibt, ob das Compilerlogo deaktiviert ist. Diese Eigenschaft ist zum /nologo-Compilerschalter äquivalent.

NoStdLib

Ein boolescher Wert, der angibt, ob Verweise auf die Standardbibliothek (mscorlib.dll) zu vermeiden sind. Der Standardwert ist false.

NoVBRuntimeReference

Ein boolescher Wert, der angibt, ob die Visual Basic-Laufzeit (Microsoft.VisualBasic.dll) als Referenz in das Projekt einbezogen werden soll.

NoWin32Manifest

Ein boolescher Wert, der angibt, ob Manifestinformationen zur Benutzerkontensteuerung (User Account Control, UAC) in die ausführbare Datei der Anwendung eingebettet werden. Bezieht sich nur auf Visual Studio-Projekte für Windows Vista. In Projekten, die mit ClickOnce und registrierungsfreiem COM bereitgestellt sind, wird dieses Element ignoriert. False (der Standardwert) gibt an, dass Manifestinformationen zur Benutzerkontensteuerung (UAC) in die ausführbare Datei der Anwendung eingebettet werden. True gibt an, das UAC-Manifestinformationen nicht eingebettet werden.

Diese Eigenschaft wird nur auf Visual Studio-Projekte für Windows Vista angewendet. In Projekten, die mit ClickOnce und COM ohne Registrierung bereitgestellt werden, wird diese Eigenschaft ignoriert.

Sie dürfen NoWin32Manifest nur hinzufügen, wenn Sie möchten, dass Visual Studio keine Manifestinformationen in die ausführbare Datei der Anwendung einbettet. Dieser Vorgang wird als Virtualisierung bezeichnet. Um Virtualisierung zu verwenden, legen Sie <ApplicationManifest> zusammen mit <NoWin32Manifest> wie folgt fest:

  • Entfernen Sie bei Visual Basic-Projekten den <ApplicationManifest>-Knoten. (In Visual Basic-Projekten wird <NoWin32Manifest> ignoriert, wenn ein <ApplicationManifest>-Knoten vorhanden ist.)

  • Legen Sie bei Visual C#-Projekten <ApplicationManifest> auf False und <NoWin32Manifest> auf True fest. (In Visual C#-Projekten wird <NoWin32Manifest> von <ApplicationManifest> überschrieben.)

Optimize

Ein boolescher Wert, der Compileroptimierungen aktiviert, wenn er auf true festgelegt ist. Diese Eigenschaft ist zum /optimize-Compilerschalter äquivalent.

OptionCompare

Gibt an, wie Zeichenfolgenvergleiche durchgeführt werden. Gültige Werte sind "binary" oder "text". Diese Eigenschaft ist zum /optioncompare-Compilerschalter von vbc.exe äquivalent.

OptionExplicit

Ein boolescher Wert, der die Deklaration von Variablen im Quellcode erfordert, wenn er auf true festgelegt ist. Diese Eigenschaft ist zum /optionexplicit-Compilerschalter äquivalent.

OptionInfer

Ein boolescher Wert, der den Typrückschluss von Variablen aktiviert, wenn er auf true festgelegt ist. Diese Eigenschaft ist zum /optioninfer-Compilerschalter äquivalent.

OptionStrict

Ein boolescher Wert, bei dessen Festlegung auf true die Buildaufgabe eine strikte Semantik erzwingt, um implizite Konvertierungen zu beschränken. Diese Eigenschaft ist zum /optionstrict-Compilerschalter des vbc.exe-Compilers äquivalent.

OutputPath

Gibt den Pfad zum Ausgabeverzeichnis relativ zum Projektverzeichnis an, zum Beispiel "bin\Debug".

OutputType

Gibt das Dateiformat der Ausgabedatei an. Dieser Parameter kann einen der folgenden Werte aufweisen:

  • Library. Erstellt eine Codebibliothek. (Standardwert)

  • Exe. Erstellt eine Konsolenanwendung.

  • Modul. Erstellt ein Modul.

  • Winexe. Erstellt ein Windows-Programm.

Diese Eigenschaft ist zum /target-Compilerschalter des vbc.exe-Compilers äquivalent.

OverwriteReadOnlyFiles

Ein boolescher Wert, der angibt, ob schreibgeschützte Dateien vom Build überschrieben werden sollen oder ob ein Fehler ausgelöst werden soll.

PdbFile

Der Dateiname der PDB-Datei, die Sie ausgeben. Diese Eigenschaft ist zum /pdb-Compilerschalter des csc.exe-Compilers äquivalent.

Plattform

Das Betriebssystem, für das Sie erstellen. Gültige Werte sind "AnyCPU", "x86", "x64" und "Itanium".

RemoveIntegerChecks

Ein boolescher Wert, der angibt, ob Überprüfungen auf Ganzzahlüberlauf-Fehler deaktiviert werden sollen. Der Standardwert ist false. Diese Eigenschaft ist zum /removeintchecks-Compilerschalter des vbc.exe-Compilers äquivalent.

SGenUseProxyTypes

Ein boolescher Wert, der angibt, ob Proxytypen von SGen.exe generiert werden sollen.

Das SGen-Ziel verwendet diese Eigenschaft, um das UseProxyTypes-Flag festzulegen. Diese Eigenschaft wird standardmäßig auf "true" festgelegt, und es ist keine Benutzeroberfläche verfügbar, um dies zu ändern. Um die Serialisierungsassembly für nicht webdienstbezogene Typen zu generieren, fügen Sie die Eigenschaft der Projektdatei hinzu, und legen Sie sie auf "False" fest, bevor Sie die "Microsoft.Common.Targets" oder die "C#/VB.targets" importieren.

SGenToolPath

Ein optionaler Toolpfad, der angibt, von wo SGen.exe abgerufen werden kann, wenn die aktuelle Version von SGen.exe überschrieben wurde.

StartupObject

Gibt die Klasse oder das Modul an, die bzw. das die Main-Methode oder die Sub Main-Prozedur enthält. Diese Eigenschaft ist zum /main-Compilerschalter äquivalent.

ProcessorArchitecture

Die Prozessorarchitektur, die zum Auflösen von Assemblyverweisen verwendet wird. Gültige Werte sind "msil", "x86", "amd64" und "ia64".

RootNamespace

Der zu verwendende Stammnamespace, wenn Sie eine eingebettete Ressource benennen. Dieser Namespace ist ein Teil des eingebetteten Ressourcenmanifestnamens.

Satellite_AlgorithmId

Die ID des zu verwendenden AL.exe-Hashalgorithmus beim Erstellen von Satellitenassemblys.

Satellite_BaseAddress

Die zu verwendende Basisadresse, wenn kulturspezifische Satellitenassemblys mit dem CreateSatelliteAssemblies-Ziel erstellt werden.

Satellite_CompanyName

Der Unternehmensname, der während der Erstellung der Satellitenassembly an AL.exe übergeben wird.

Satellite_Configuration

Der Konfigurationsname, der während der Erstellung der Satellitenassembly an AL.exe übergeben wird.

Satellite_Description

Der Beschreibungstext, der während der Erstellung der Satellitenassembly an AL.exe übergeben wird.

Satellite_EvidenceFile

Bettet die angegebene Datei in die Satellitenassembly mit dem Ressourcennamen "Security.Evidence" ein.

Satellite_FileVersion

Gibt eine Zeichenfolge für das Feld File Version in der Satellitenassembly an.

Satellite_Flags

Gibt einen Wert für das Feld Flags in der Satellitenassembly an.

Satellite_GenerateFullPaths

Veranlasst die Buildaufgabe, absolute Pfade für alle Dateien zu verwenden, die in einer Fehlermeldung gemeldet werden.

Satellite_LinkResource

Verknüpft die angegebenen Ressourcendateien mit einer Satellitenassembly.

Satellite_MainEntryPoint

Legt den voll qualifizierten Namen (class.method) der Methode fest, die als Einstiegspunkt zu verwenden ist, wenn ein Modul während der Erstellung einer Satellitenassembly in eine ausführbare Datei konvertiert wird.

Satellite_ProductName

Gibt eine Zeichenfolge für das Feld Product in der Satellitenassembly an.

Satellite_ProductVersion

Gibt eine Zeichenfolge für das Feld ProductVersion in der Satellitenassembly an.

Satellite_TargetType

Gibt das Dateiformat der Ausgabedatei der Satellitenassembly als "library", "exe" oder "win" an. Der Standardwert ist "library".

Satellite_Title

Gibt eine Zeichenfolge für das Feld Title in der Satellitenassembly an.

Satellite_Trademark

Gibt eine Zeichenfolge für das Feld Trademark in der Satellitenassembly an.

Satellite_Version

Gibt die Versionsdaten für die Satellitenassembly an.

Satellite_Win32Icon

Fügt eine ICO-Symboldatei in die Satellitenassembly ein.

Satellite_Win32Resource

Fügt eine Win32-Ressource (RES-Datei) in die Satellitenassembly ein.

TargetCompactFramework

Die Versionsbezeichnung von .NET Compact Framework, die zur Ausführung der zu erstellenden Anwendung erforderlich ist. Durch diese Angabe können Sie auf bestimmte Frameworkassemblys verweisen, auf die andernfalls möglicherweise nicht verwiesen werden kann.

TargetFrameworkVersion

Die Version von .NET Framework, die zum Ausführen der zu erstellenden Anwendung erforderlich ist. Durch diese Angabe können Sie auf bestimmte Frameworkassemblys verweisen, auf die andernfalls möglicherweise nicht verwiesen werden kann.

TreatWarningsAsErrors

Ein boolescher Parameter. Wenn sein Wert true ist, werden alle Warnungen als Fehler behandelt. Dieser Parameter ist zum /nowarn-Compilerschalter äquivalent.

UseHostCompilerIfAvailable

Ein boolescher Parameter. Wenn sein Wert true ist, verwendet die Buildaufgabe das prozessinterne Compilerobjekt, falls es verfügbar ist. Dieser Parameter wird nur von Visual Studio verwendet.

Utf8Output

Ein boolescher Parameter. Wenn sein Wert true ist, wird die Compilerausgabe mithilfe der UTF-8-Codierung protokolliert. Dieser Parameter ist zum /utf8Output-Compilerschalter äquivalent.

VbcToolPath

Ein optionaler Pfad, der einen anderen Speicherort für vbc.exe angibt, wenn die aktuelle Version von vbc.exe überschrieben wurde.

VbcVerbosity

Gibt den Ausführlichkeitsgrad der Compilerausgabe von Visual Basic an. Gültige Werte sind "Quiet", "Normal" (der Standardwert) und "Verbose".

WarningsAsErrors

Gibt eine Liste mit Warnungen an, die als Fehler behandelt werden sollen. Dieser Parameter ist zum /warnaserror-Compilerschalter äquivalent.

WarningsNotAsErrors

Gibt eine Liste mit Warnungen an, die nicht als Fehler behandelt werden sollen. Dieser Parameter ist zum /warnaserror-Compilerschalter äquivalent.

Win32Manifest

Der Name der Manifestdatei, die in die endgültige Assembly eingebettet werden soll. Dieser Parameter ist zum /win32Manifest-Compilerschalter äquivalent.

Wint32Resource

Der Dateiname der Win32-Ressource, die in die endgültige Assembly eingebettet werden soll. Dieser Parameter ist zum /win32resource-Compilerschalter äquivalent.

Siehe auch

Referenz

Gemeinsame MSBuild-Projektelemente