/target (C#-Compileroptionen)/target (C# Compiler Options)

Die Compileroption /target kann in einem von vier Formaten angegeben werden:The /target compiler option can be specified in one of four forms:

/target:appcontainerexe/target:appcontainerexe
So erstellen Sie eine EXE-Datei für Windows 8.x StoreWindows 8.x Store-Anwendungen.To create an .exe file for Windows 8.x StoreWindows 8.x Store apps.

/target:exe/target:exe
So erstellen Sie eine EXE-Datei.To create an .exe file.

/target:library/target:library
So erstellen Sie eine Codebibliothek.To create a code library.

/target:module/target:module
So erstellen Sie ein Modul.To create a module.

/target:winexe/target:winexe
So erstellen Sie ein Windows-Programm.To create a Windows program.

/target:winmdobj/target:winmdobj
So erstellen Sie eine WINMDOBJ-Zwischendatei.To create an intermediate .winmdobj file.

Wenn Sie nicht /target:module angegeben haben, verursacht /target, dass ein .NET Framework-Assemblymanifest in einer Ausgabedatei platziert wird.Unless you specify /target:module, /target causes a .NET Framework assembly manifest to be placed in an output file. Weitere Informationen finden Sie unter Assemblys in der Common Language Runtime und Häufige Attribute.For more information, see Assemblies in the Common Language Runtime and Common Attributes.

Das Assemblymanifest wird in der ersten EXE-Ausgabedatei in der Kompilierung oder in der ersten DLL platziert, falls es keine EXE-Ausgabedatei gibt.The assembly manifest is placed in the first .exe output file in the compilation or in the first DLL, if there is no .exe output file. In der folgenden Befehlszeile wird das Manifest z.B. in 1.exe platziert:For example, in the following command line, the manifest will be placed in 1.exe:

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

Der Compiler erstellt nur ein Assemblymanifest pro Kompilierung.The compiler creates only one assembly manifest per compilation. Informationen über alle Dateien in einer Kompilierung werden im Assemblymanifest platziert.Information about all files in a compilation is placed in the assembly manifest. Alle Ausgabedateien, außer diejenigen die mit /target:module erstellt wurden, können ein Assemblymanifest enthalten.All output files except those created with /target:module can contain an assembly manifest. 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.When producing multiple output files at the command line, only one assembly manifest can be created and it must go into the first output file specified on the command line. 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).No matter what the first output file is (/target:exe, /target:winexe, /target:library or /target:module), any other output files produced in the same compilation must be modules (/target:module).

Wenn Sie eine Assembly erstellen, können Sie angeben, dass der ganze oder ein Teil des Codes mit dem CLSCompliantAttribute-Attribut CLS-kompatibel ist.If you create an assembly, you can indicate that all or part of your code is CLS compliant with the CLSCompliantAttribute attribute.

// 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() {}  
}  

Informationen zum programmgesteuerten Festlegen dieser Compileroption finden Sie unter OutputType.For more information about setting this compiler option programmatically, see OutputType.

Siehe auchSee Also

C#-CompileroptionenC# Compiler Options
Verwalten von Projekt- und ProjektmappeneigenschaftenManaging Project and Solution Properties
/subsystemversion (C#-Compileroptionen)/subsystemversion (C# Compiler Options)