/target (C#-Compileroptionen)

Die Compileroption /target kann in einem von vier Formaten angegeben werden:

/target:appcontainerexe
So erstellen Sie eine EXE-Datei für Windows 8.x Store-Anwendungen.

/target:exe
So erstellen Sie eine EXE-Datei.

/target:library
So erstellen Sie eine Codebibliothek.

/target:module
So erstellen Sie ein Modul.

/target:winexe
So erstellen Sie ein Windows-Programm.

/target:winmdobj
So erstellen Sie eine WINMDOBJ-Zwischendatei.

Wenn Sie nicht /target:module angegeben haben, verursacht /target, dass ein .NET Framework-Assemblymanifest in einer Ausgabedatei platziert wird. Weitere Informationen finden Sie unter Assemblys in der Common Language Runtime und Häufige Attribute.

Das Assemblymanifest wird in der ersten EXE-Ausgabedatei in der Kompilierung oder in der ersten DLL platziert, falls es keine EXE-Ausgabedatei gibt. In der folgenden Befehlszeile wird das Manifest z.B. in 1.exe platziert:

csc /out:1.exe t1.cs /out:2.netmodule t2.cs  

Der Compiler erstellt nur ein Assemblymanifest pro Kompilierung. Informationen über alle Dateien in einer Kompilierung werden im Assemblymanifest platziert. Alle Ausgabedateien, außer diejenigen die mit /target:module erstellt wurden, können ein Assemblymanifest enthalten. Wenn mehrere Ausgabedateien in der Befehlszeile erstellt werden, kann nur ein Assemblymanifest erstellt werden, und es muss in die erste Ausgabedatei gehen, die in der Befehlszeile angegeben wurde. Unabhängig davon, was die erste Ausgabedatei ist (/target:exe, /target:winexe, /target:library oder /target:module), müssen alle anderen Ausgabedateien, die in der selben Kompilierung erzeugt wurden, Module sein (/target:module).

Wenn Sie eine Assembly erstellen, können Sie angeben, dass der ganze oder ein Teil des Codes mit dem Attribut CLSCompliantAttribute CLS-kompatibel ist.

// target_clscompliant.cs  
[assembly:System.CLSCompliant(true)]   // specify assembly compliance  

[System.CLSCompliant(false)]   // specify compliance for an element  
public class TestClass  
{  
    public static void Main() {}  
}  

Weitere Informationen zum programmatischen Festlegen dieser Compileroption finden Sie unter OutputType.

Siehe auch

C#-Compileroptionen
NIB: Vorgehensweise: Ändern von Projekteigenschaften und Konfigurationseinstellungen
/subsystemversion (C#-Compileroptionen)