Csc-Aufgabe

Umschließt csc.exe und erzeugt ausführbare Dateien (EXE-Dateien), Dynamic Link Libraries (DLL-Dateien) und Codemodule (NETMODULE-Dateien). Weitere Informationen zu csc.exe finden Sie unter C#-Compileroptionen.

Parameter

In der folgenden Tabelle werden die Parameter der Csc -Aufgabe beschrieben.

Parameter Beschreibung
AdditionalLibPaths Optionaler String[]-Parameter.

Gibt zusätzliche Verzeichnisse an, in denen nach Verweisen gesucht wird. Weitere Informationen finden Sie unter -lib (C#-Compileroptionen).
AddModules Optionaler String-Parameter.

Gibt mindestens Modul an, das Bestandteil dieser Assembly sein soll. Weitere Informationen finden Sie unter -addmodule (C#-Compileroptionen).
AllowUnsafeBlocks Optionaler Boolean-Parameter.

Ist der Wert true, wird Code kompiliert, der dasunsafe-Schlüsselwort verwendet. Weitere Informationen finden Sie unter -unsafe (C#-Compileroptionen).
ApplicationConfiguration Optionaler String-Parameter.

Gibt die Anwendungskonfigurationsdatei mit den Assemblybindungseinstellungen an.
BaseAddress Optionaler String-Parameter.

Gibt die bevorzugte Basisadresse an, unter der eine DLL geladen werden soll. Die Standard-Basisadresse für eine DLL-Datei wird durch die Common Language Runtime von .NET Framework festgelegt. Weitere Informationen finden Sie unter -baseaddress (C#-Compileroptionen).
CheckForOverflowUnderflow Optionaler Boolean-Parameter.

Gibt an, ob Ganzzahlarithmetik, die die Grenzen des Datentyps überschreitet, zur Laufzeit eine Ausnahme auslöst. Weitere Informationen finden Sie unter -checked (C#-Compileroptionen).
ChecksumAlgorithm Optionaler String-Parameter.

Gibt den Algorithmus zur Berechnung der Prüfsumme der Quelldatei an, der in der PDB-Datei gespeichert ist. Der Algorithmus muss entweder SHA-1 (Standard) oder SHA-256 sein. Weitere Informationen finden Sie unter ChecksumAlgorithm.
CodeAnalysisRuleset Optionaler String-Parameter.

Gibt eine Regelsatzdatei an, die bestimmte Diagnosefunktionen deaktiviert. Weitere Informationen finden Sie unter CodeAnalysisRuleset.
CodePage Optionaler Int32-Parameter.

Gibt die für alle Quellcodedateien in der Kompilierung die zu verwendende Codepage an. Weitere Informationen finden Sie unter -codepage (C#-Compileroptionen).
DebugType Optionaler String-Parameter.

Gibt den Debugtyp an. DebugType kann full oder pdbonly sein. Die Standardeinstellung ist full. Dadurch kann ein Debugger einem aktiven Programm zugeordnet werden kann. Durch das Angeben von pdbonly ist ein Debuggen von Quellcode möglich, wenn das Programm im Debugger gestartet wird. Der Assembler wird jedoch nur angezeigt, wenn das aktive Programm an den Debugger angefügt ist.

Dieser Parameter überschreibt den EmitDebugInformation-Parameter.

Weitere Informationen finden Sie unter -debug (C#-Compileroptionen).
DefineConstants Optionaler String-Parameter.

Definiert Präprozessorsymbole. Weitere Informationen finden Sie unter -define (C#-Compileroptionen).
DelaySign Optionaler Boolean-Parameter.

Ist der Wert true, gibt dies an, dass Sie nur den öffentlichen Schlüssel in die Assembly platzieren möchten. Ist der Wert false, gibt dies an, dass die Assembly vollständig signiert werden soll.

Dieser Parameter hat nur dann Auswirkungen, wenn Sie ihn entweder mit dem KeyFile- oder KeyContainer-Parameter verwenden.

Weitere Informationen finden Sie unter -delaysign (C#-Compileroptionen).
Deterministic Optionaler Boolean-Parameter.

Wenn dieser auf true festgelegt ist, gibt der Compiler eine Assembly aus, deren Inhalt im Binärformat über Kompilierungen identisch ist, wenn die Eingaben identisch sind.

Weitere Informationen finden Sie unter -deterministic (C#-Compileroptionen).
DisabledWarnings Optionaler String-Parameter.

Gibt die Liste der zu deaktivierenden Warnungen an. Weitere Informationen finden Sie unter -nowarn (C#-Compileroptionen).
DocumentationFile Optionaler String-Parameter.

Verarbeitet Dokumentationskommentare zu einer XML-Datei. Weitere Informationen finden Sie unter -doc (C#-Compileroptionen).
EmbedAllSources Optionaler Boolean-Parameter.

Einbetten aller Quelldateien in die PDB-Datei. Weitere Informationen finden Sie unter -embed (C#-Compileroptionen).
EmitDebugInformation Optionaler Boolean-Parameter.

Ist der Wert true, generiert die Aufgabe Debuginformationen und platziert sie in einer Programmdatenbankdatei (PDB-Datei). Ist der Wert false, erzeugt die Aufgabe keine Debuginformationen. Der Standardwert ist false. Weitere Informationen finden Sie unter -debug (C#-Compileroptionen).
ErrorLog Optionaler String-Parameter.

Gibt eine Datei für das Protokollieren der gesamten Compiler- und Analysetooldiagnose an. Weitere Informationen finden Sie unter ErrorLog.
ErrorReport Optionaler String-Parameter.

Bietet eine einfache Möglichkeit, einen internen C#-Fehler an Microsoft zu melden. Dieser Parameter kann den Wert prompt, send oder none haben. Wenn der Parameter auf prompt festgelegt ist, erhalten Sie eine Aufforderung, wenn ein interner Compilerfehler auftritt. Mithilfe der Aufforderung können Sie einen Fehlerbericht elektronisch an Microsoft senden. Wenn der Parameter auf send festgelegt ist, wird automatisch ein Problembericht gesendet. Wenn der Parameter auf none festgelegt ist, wird der Fehler nur in der Textausgabe des Compilers gemeldet. Der Standardwert ist none. Weitere Informationen finden Sie unter -errorreport (C#-Compileroptionen).
FileAlignment Optionaler Int32-Parameter.

Gibt die Größe der Abschnitte in der Ausgabedatei an. Weitere Informationen finden Sie unter -filealign (C#-Compileroptionen).
GenerateFullPaths Optionaler Boolean-Parameter.

Ist der Wert true, wird der absolute Pfad zur Datei in der Compilerausgabe angegeben. Ist der Wert false, wird der Dateiname angegeben. Der Standardwert ist false. Weitere Informationen finden Sie unter -fullpaths (C#-Compileroptionen).
HighEntropyVA Optionaler Boolean-Parameter

Aktiviert ASLR (Address Space Layout Randomization) mit hoher Entropie. Weitere Informationen finden Sie unter HighEntropyVA.
KeyContainer Optionaler String-Parameter.

Gibt den Namen des kryptografischen Schlüsselcontainers an. Weitere Informationen finden Sie unter -keycontainer (C#-Compileroptionen).
KeyFile Optionaler String-Parameter.

Gibt den Dateinamen mit dem kryptografischen Schlüssel an. Weitere Informationen finden Sie unter -keyfile (C#-Compileroptionen).
LangVersion Optionaler String-Parameter.

Gibt die Version der zu verwendenden Sprache an. Weitere Informationen finden Sie unter -langversion (C#-Compileroptionen).
LinkResources Optionaler ITaskItem[]-Parameter

Erstellt einen Link zu einer .NET Framework-Ressource in der Ausgabedatei. Die Ressourcendatei wird nicht in der Ausgabedatei platziert.

Elemente, die an diesen Parameter übergeben werden, können optionale Metadateneinträge mit dem Namen LogicalName und Access enthalten. LogicalName entspricht dem identifier-Parameter des /linkresource-Switches, und Access entspricht dem accessibility-modifier-Parameter. Weitere Informationen finden Sie unter -linkresource (C#-Compileroptionen).
MainEntryPoint Optionaler String-Parameter.

Gibt den Speicherort der Main-Methode an. Weitere Informationen finden Sie unter -main (C#-Compileroptionen).
ModuleAssemblyName Optionaler String-Parameter.

Gibt den Namen der Assembly an, zu der dieses Modul gehört.
NoConfig Optionaler Boolean-Parameter.

Wenn der Wert true ist, wird der Compiler angewiesen, nicht mit der Datei csc.rsp zu kompilieren. Weitere Informationen finden Sie unter -noconfig (C#-Compileroptionen).
NoLogo Optionaler Boolean-Parameter.

Wenn der Wert true ist, werden die Compilerbannerinformationen unterdrückt. Weitere Informationen finden Sie unter -nologo (C#-Compileroptionen).
NoStandardLib Optionaler Boolean-Parameter.

Wenn der Wert true ist, wird der Import der Datei mscorlib.dll verhindert, die den gesamten Systemnamespace definiert. Verwenden Sie diesen Parameter, wenn Sie Ihren eigenen Systemnamespace und die entsprechenden Objekte definieren oder erstellen möchten. Weitere Informationen finden Sie unter -nostdlib (C#-Compileroptionen).
NoWin32Manifest Optionaler Boolean-Parameter.

Wenn der Wert true ist, schließen Sie das Win32-Standardmanifest nicht ein.
Nullable Optionaler String-Parameter.

Gibt den Nullwerte zulassenden Kontext an. Eines der folgenden Argumente muss verwendet werden: enable, disable, warnings oder annotations. Weitere Informationen finden Sie unter Nullable.
Optimize Optionaler Boolean-Parameter.

Wenn der Wert true ist, werden Optimierungen aktiviert. Wenn der Wert false ist, werden Optimierungen deaktiviert. Weitere Informationen finden Sie unter -optimize (C#-Compileroptionen).
OutputAssembly Optionaler String-Ausgabeparameter.

Gibt den Namen der Ausgabedatei an. Weitere Informationen finden Sie unter -out (C#-Compileroptionen).
OutputRefAssembly Optionaler String-Parameter.

Gibt den Namen der ausgegebenen Referenzassemblydatei an. Weitere Informationen finden Sie unter -refout (C# Compileroptionen).
PathMap Optionaler String-Parameter.

Gibt an, wie physische Pfade den Quellpfadnamen zugeordnet werden, die vom Compiler ausgegeben werden. Weitere Informationen finden Sie unter PathMap.
PdbFile Optionaler String-Parameter.

Gibt den Dateinamen der Debuginformationen an. Der Standardname ist der Ausgabedateiname mit einer PDB-Erweiterung.
Platform Optionaler String-Parameter.

Gibt die Prozessorplattform an, die das Ziel der Ausgabedatei darstellen soll. Dieser Parameter kann den Wert x86, x64 oder anycpu haben. Der Standardwert ist anycpu. Weitere Informationen finden Sie unter -platform (C#-Compileroptionen).
PreferredUILang Optionaler String-Parameter.

Gibt die Sprache an, in der der C#-Compiler Ausgaben wie z. B. Fehlermeldungen anzeigt. Weitere Informationen finden Sie unter PreferredUILang.
PublicSign Optionaler Boolean-Parameter.

Signiert die Ausgabeassembly öffentlich. Weitere Informationen finden Sie unter PublicSign.
References Optionaler ITaskItem[]-Parameter

Bewirkt, dass die Aufgabe öffentliche Typinformationen aus den angegebenen Elementen in das aktuelle Projekt importiert. Weitere Informationen finden Sie unter -reference (C#-Compileroptionen).

Sie können einen C#-Verweisalias in einer MSBuild-Datei angeben, indem Sie die Metadaten Aliases zum ursprünglichen „Verweis“-Element hinzufügen. Angenommen, Sie möchten den Alias „LS1“ in der folgenden CSC-Befehlszeile festlegen:

CSC /r:LS1=MyCodeLibrary.dll /r:LS2=MyCodeLibrary2.dll *.cs

In diesem Fall verwenden Sie:

<Reference Include="MyCodeLibrary"> <Aliases>LS1</Aliases> </Reference>
RefOnly Optionaler Boolean-Parameter.

Erstellt anstelle einer vollständigen Assembly eine Referenzassembly als primäre Ausgabe. Weitere Informationen finden Sie unter ProduceOnlyReferenceAssembly.
ReportAnalyzer Optionaler Boolean-Parameter.

Berichten zusätzlicher Analysetoolinformationen, z.B. der Zeitpunkt der Ausführung. Weitere Informationen finden Sie unter ReportAnalyzer.
Resources Optionaler ITaskItem[]-Parameter

Bettet eine .NET Framework-Ressource in die Ausgabedatei ein.

Elemente, die an diesen Parameter übergeben werden, können optionale Metadateneinträge mit dem Namen LogicalName und Access enthalten. LogicalName entspricht dem identifier-Parameter des /resource-Switches, und Access entspricht dem accessibility-modifier-Parameter. Weitere Informationen finden Sie unter -resource (C#-Compileroptionen).
ResponseFiles Optionaler String-Parameter.

Gibt die Antwortdatei an, die Befehle für den die Aufgabe enthalten. Weitere Informationen finden Sie unter @ (Antwortdatei festlegen).
Sources Optionaler ITaskItem[]-Parameter

Gibt mindestens eine C#-Quelldatei an.
TargetType Optionaler String-Parameter.

Gibt das Dateiformat der Ausgabedatei an. Dieser Parameter kann unterschiedliche Werte aufweisen: library erstellt eine Codebibliothek, exe erstellt eine Konsolenanwendung, module erstellt ein Modul, und winexe erstellt ein Windows-Programm. Der Standardwert ist library. Weitere Informationen finden Sie unter -target (C#-Compileroptionen).
TreatWarningsAsErrors Optionaler Boolean-Parameter.

Wenn true, werden alle Warnungen als Fehler behandelt. Weitere Informationen finden Sie unter-warnaserror (C#-Compileroptionen).
UseHostCompilerIfAvailable Optionaler Boolean-Parameter.

Weist die Aufgabe an, das prozessinterne Compilerobjekt (falls verfügbar) zu verwenden. Wird nur von Visual Studio verwendet.
Utf8Output Optionaler Boolean-Parameter.

Protokolliert die Compilerausgabe mit UTF-8-Codierung. Weitere Informationen finden Sie unter -utf8output (C#-Compileroptionen).
WarningLevel Optionaler Int32-Parameter.

Gibt die vom Compiler anzuzeigende Warnstufe an. Weitere Informationen finden Sie unter -warn (C#-Compileroptionen).
WarningsAsErrors Optionaler String-Parameter.

Gibt eine Liste mit Warnungen an, die als Fehler behandelt werden sollen. Weitere Informationen finden Sie unter-warnaserror (C#-Compileroptionen).

Dieser Parameter überschreibt den TreatWarningsAsErrors-Parameter.
WarningsNotAsErrors Optionaler String-Parameter.

Gibt eine Liste mit Warnungen an, die nicht als Fehler behandelt werden sollen. Weitere Informationen finden Sie unter-warnaserror (C#-Compileroptionen).

Dieser Parameter ist nur dann nützlich, wenn der TreatWarningsAsErrors-Parameter auf true gesetzt ist.
Win32Icon Optionaler String-Parameter.

Fügt der Assembly eine ICO-Datei hinzu, die der Ausgabedatei im Datei-Explorer das gewünschte Aussehen verleiht. Weitere Informationen finden Sie unter -win32icon (C#-Compileroptionen).
Win32Manifest Optionaler String-Parameter.

Gibt das Win32-Manifest an, das eingeschlossen werden sollen.
Win32Resource Optionaler String-Parameter.

Fügt eine Win32-Ressource (RES-Datei) in die Ausgabedatei ein. Weitere Informationen finden Sie unter -win32res (C#-Compileroptionen).

ToolTaskExtension-Parameter

Dieser Task erbt aus der ToolTaskExtension-Klasse, die aus der ToolTask-Klasse erbt, welche wiederum aus der Task-Klasse erbt. Diese Vererbungskette fügt verschiedene Parameter zu den Aufgaben hinzu, die aus ihnen abgeleitet werden.

In der folgenden Tabelle werden die Parameter der Basisklassen beschrieben:

Parameter Beschreibung
EchoOff Optionaler bool-Parameter.

Bei der Festlegung auf true gibt diese Aufgabe /Q an die Befehlszeile cmd.exe so weiter, dass die Befehlszeile nicht zu „stdout“ kopiert wird.
EnvironmentVariables Optionaler String-Arrayparameter.

Array aus Umgebungsvariablendefinitionen, getrennt durch Semikolons. Jede Definition sollte einen Namen und einen Wert für eine Umgebungsvariable angeben, getrennt durch ein Gleichheitszeichen. Diese Variablen werden an die erstellte ausführbare Datei zusätzlich zum regulären Umgebungsblock oder zum ausgewählten Überschreiben hinzugefügt. Beispiel: Variable1=Value1;Variable2=Value2.
ExitCode Optionaler schreibgeschützter Int32-Ausgabeparameter.

Gibt den durch den ausgeführten Befehl bereitgestellten Exitcode an. Wenn bei der Aufgabe Fehler protokolliert wurden, der Prozess jedoch über einen Exitcode von „0“ (Erfolg) verfügt hat, wird dies auf „-1“ festgelegt.
LogStandardErrorAsError Optionaler bool-Parameter.

Wenn true gegeben ist, werden alle im Standardfehlerstream empfangenen Meldungen als Fehler protokolliert.
StandardErrorImportance Optionaler String-Parameter.

Wichtigkeit, mit der Text aus dem Standardfehlerstream protokolliert wird.
StandardOutputImportance Optionaler String-Parameter.

Wichtigkeit, mit der Text aus dem Standardausgabestream protokolliert wird.
Timeout Optionaler Int32-Parameter.

Gibt die Zeitdauer in Millisekunden an, nach der die ausführbare Datei der Aufgabe beendet wird. Der Standardwert ist Int.MaxValue. Dieser gibt an, dass es kein Zeitlimit gibt. Das Timeout in Millisekunden.
ToolExe Optionaler string-Parameter.

Projekte implementieren dies möglicherweise zum Überschreiben eines ToolName. Aufgaben überschreiben dies möglicherweise zum Beibehalten des ToolName.
ToolPath Optionaler string-Parameter.

Gibt den Speicherort an, von wo aus die Aufgabe die zugrunde liegende ausführbare Datei lädt. Wenn dieser Parameter nicht angegeben ist, verwendet die Aufgabe den SDK-Installationspfad der Version des Frameworks, die von MSBuild ausgeführt wird.
UseCommandProcessor Optionaler bool-Parameter.

Wenn die Festlegung auf true gegeben ist, erstellt diese Aufgabe eine Batchdatei für die Befehlszeile und führt sie aus, indem der Befehl nicht direkt ausgeführt wird, sondern der Befehlsprozessor verwendet wird.
YieldDuringToolExecution Optionaler bool-Parameter.

Bei der Festlegung auf true ergibt diese Aufgabe den Knoten, wenn dessen Aufgabe ausgeführt wird.

Beispiel

Im folgenden Beispiel wird die Csc-Aufgabe verwendet, um eine ausführbare Datei aus den Quelldateien in der Compile-Elementauflistung zu kompilieren.

<CSC
    Sources="@(Compile)"
    OutputAssembly="$(AppName).exe"
    EmitDebugInformation="true" />

Siehe auch