/target (Visual Basic)
Gibt das Format der Compilerausgabe an.
/target:{exe | library | module | winexe | appcontainerexe | winmdobj}
Hinweise
In der folgenden Tabelle wird die Wirkung der /target-Option zusammengefasst.
Option |
Verhalten |
---|---|
/target:exe |
Bewirkt, dass der Compiler eine ausführbare Konsolenanwendung erstellt. Dies ist die Standardoption, wenn keine /target-Option angegeben wurde. Die ausführbare Datei wird mit der Erweiterung EXE erstellt. Sofern nicht durch die /out-Option anders angegeben, erhält die Ausgabedatei den Namen derjenigen Eingabedatei, welche die Sub Main-Prozedur enthält. In den Quellcodedateien, die zu einer EXE-Datei kompiliert werden, wird nur eine Sub Main-Prozedur benötigt. Verwenden Sie die /main-Compileroption, um anzugeben, welche Klasse die Sub Main-Prozedur enthält. |
/target:library |
Bewirkt, dass der Compiler eine Dynamic Link Library (DLL) erstellt. Die Dynamic-Link-Library-Datei wird mit der Erweiterung .dll erstellt. Sofern nicht durch die /out-Option anders angegeben, erhält die Ausgabedatei den Namen der ersten Eingabedatei. Beim Erstellen einer DLL wird keine Sub Main-Prozedur benötigt. |
/target:module |
Bewirkt, dass der Compiler ein Modul generiert, das einer Assembly hinzugefügt werden kann. Die Ausgabedatei erhält die Dateinamenerweiterung . netmodule. Die .NET-Common Language Runtime kann eine Datei ohne Assembly nicht laden. Allerdings können Sie eine solche Datei mithilfe von /reference in das Assemblymanifest einer Assembly aufnehmen. Wenn Code in einem Modul auf interne Typen in einem anderen Modul verweist, müssen beide Module mithilfe von /reference in ein Assemblymanifest aufgenommen werden. Die /addmodule-Option importiert Metadaten aus einem Modul. |
/target:winexe |
Bewirkt, dass der Compiler eine ausführbare Windows-basierte Anwendung erstellt. Die ausführbare Datei wird mit der Erweiterung EXE erstellt. Eine Windows-basierte Anwendung ist eine Anwendung, die eine Benutzeroberfläche entweder aus der .NET Framework-Klassenbibliothek oder aus den Win32-APIs bereitstellt. Sofern nicht durch die /out-Option anders angegeben, erhält die Ausgabedatei den Namen derjenigen Eingabedatei, welche die Sub Main-Prozedur enthält. In den Quellcodedateien, die zu einer EXE-Datei kompiliert werden, wird nur eine Sub Main-Prozedur benötigt. Falls im Code mehr als eine Klasse mit einer Sub Main-Prozedur vorhanden ist, geben Sie mithilfe der /main-Compileroption an, welche Klasse die Sub Main-Prozedur enthält. |
/target:appcontainerexe |
Bewirkt, dass der Compiler eine ausführbare Windows-basierte Anwendung zu erstellen, die in einem App-Container ausgeführt werden muss. Diese Einstellung ist so konzipiert, Windows Store für Anwendungen verwendet werden. appcontainerexe, das Sätze ein Bit auf dem Eigenschaftengebiet der PE-Datei Datei festgelegt wird. Dieses Bit gibt an, dass die Anwendung in einen App-Container ausgeführt werden muss. Wenn dieses Bit festgelegt ist, tritt ein Fehler auf, wenn die CreateProcess-Methode versucht, zum Starten der Anwendung außerhalb eines App-Containers. Neben dieser Biteinstellung ist /target:appcontainerexe zu /target:winexe entsprechend. Die ausführbare Datei wird mit der Erweiterung EXE erstellt. Es sei denn, Sie anders festlegen, indem Sie die Option /out verwenden, übernimmt der Ausgabedatei den Namen der Eingabedatei, die die Sub Main Prozedur enthält. In den Quellcodedateien, die zu einer EXE-Datei kompiliert werden, wird nur eine Sub Main-Prozedur benötigt. Wenn der Code mehr als eine Klasse enthält, die eine Sub Main Prozedur verfügt, verwenden Sie die - Compileroption /main anzugeben, der - Klasse, die Sub Main Prozedur enthält |
/target:winmdobj |
Bewirkt, dass der Compiler eine Zwischendatei zu erstellen, die Sie einer binären (.winmd) Datei der Windows Runtime konvertieren können. Die WINMD-Datei kann durch JavaScript- und C++-Programmen, neben den verwalteten Sprachenprogrammen genutzt werden. Die Zwischendatei wird mit einer .winmdobj-Erweiterung erstellt. Es sei denn, Sie anders festlegen, indem Sie die Option /out verwenden, übernimmt die Ausgabedatei den Namen der ersten Eingabedatei. Eine Sub Main Prozedur ist nicht erforderlich. Die WINMDOBJ-Datei wurde entworfen, als Eingabe verwendet werden, sodass das WinMDExp Exporttool eine Datei Windows-Metadaten (WinMD) erzeugt. Die WinMD-Datei verfügt über eine .winmd-Erweiterung und enthält den Code aus der ursprünglichen Bibliothek und die WinMD-Definitionen, die JavaScript, C++ und die Windows Runtime verwendet. |
Wenn Sie kein /target:module festlegen, wird von /target einer Ausgabedatei ein .NET Framework-Assemblymanifest hinzugefügt.
Jede Instanz von Vbc.exe erzeugt höchstens eine Ausgabedatei. Wird eine Compileroption wie /out oder /target mehrfach angegeben, ist die vom Compiler zuletzt erkannte wirksam. Informationen über alle Dateien in einer Kompilierung werden in das Assemblymanifest geschrieben. Alle Ausgabedateien mit Ausnahme der mit /target:module erstellten Dateien können Assemblymetadaten im Manifest enthalten. Verwenden Sie den Ildasm.exe (IL Disassembler), um die Metadaten in einer Ausgabedatei anzuzeigen.
Die Kurzform von /target ist /t.
So legen Sie /target in der Visual Studio-IDE fest
Wählen Sie im Projektmappen-Explorer ein Projekt aus. Klicken Sie im Menü Projekt auf Eigenschaften. Weitere Informationen finden Sie unter Einführung in den Projekt-Designer.
Klicken Sie auf die Registerkarte Anwendung.
Ändern Sie den Wert im Feld Anwendungstyp.
Beispiel
Im folgenden Code wird in.vb kompiliert und in.dll erstellt:
vbc /target:library in.vb
Siehe auch
Referenz
Beispiele für Kompilierungsbefehlszeilen (Visual Basic)
Konzepte
Assemblys und der globale Assemblycache (C# und Visual Basic)