/platform (Visual Basic)
Gibt an, welche Plattformversion der common Language Runtime (CLR) die Ausgabedatei ausführen kann.
/platform:{ x86 | x64 | Itanium | arm | anycpu | anycpu32bitpreferred }
Argumente
Begriff |
Definition |
x86 |
Kompiliert die Assembly für die 32-Bit-x86-kompatible CLR (Common Language Runtime). |
x64 |
Kompiliert Ihre Assembly für die 64-Bit-CLR auf einem Computer, der den AMD64- oder EM64T-Anweisungssatz unterstützt. |
Itanium |
Kompiliert Ihre Assembly für die Ausführung durch den 64-Bit-CLR auf einem Computer mit einem Itanium-Prozessor. |
arm |
Kompiliert Ihre Assembly für die Ausführung auf einem Computer mit einem ARM-Prozessor (Advanced RISC-Computer). |
anycpu |
Kompiliert die Assembly für die Ausführung auf einer beliebigen Plattform. Die Anwendung wird auf 32-Bit-Versionen von Windows als 32-Bit-Anwendung und auf 64-Bit-Versionen von Windows als 64-Bit-Anwendung ausgeführt. Diese Meldung ist der Standardwert. |
anycpu32bitpreferred |
Kompiliert die Assembly für die Ausführung auf einer beliebigen Plattform. Die Anwendung wird als 32-Bit-Anwendung auf 32-Bit- und 64-Bit-Versionen von Windows ausgeführt. Dieses Flag ist nur gültig für ausführbare Dateien (.(EXE) und erfordert .NET Framework 4.5. |
Hinweise
Verwenden Sie die /platform-Option, um den Typ des Zielprozessors für die Ausgabedatei anzugeben.
Im Allgemeinen werden in Visual Basic geschriebene .NET Framework-Assemblys identisch ausgeführt, unabhängig von der Plattform. Es gibt jedoch einige Fälle, die sich auf unterschiedlichen Plattformen unterschiedlich verhalten. Diese allgemeinen Fälle sind:
Strukturen, die Member enthalten, deren Größe sich je nach Plattform ändert (z. B. jeder beliebige Zeigertyp).
Zeigerarithmetik, die Größen von Konstanten einschließt.
Fehlerhafter Plattformaufruf oder COM-Deklarationen, die Integer statt IntPtr für Handles verwenden.
Umwandeln von IntPtr zu Integer.
Verwendet einen Plattformaufruf oder COM-Interop für Komponenten, die nicht auf allen Plattformen vorhanden sind.
Die /platform-Option löst einige Probleme, wenn Sie wissen, dass Sie Annahmen über die Architektur, mit der der Code ausgeführt wird, gemacht haben. Dies gilt insbesondere in folgenden Fällen:
Wenn Sie sich entscheiden, eine 64-Bit-Plattform anzuzielen und die Anwendung auf einem 32-Bit-Computer ausgeführt wird, wird die Fehlermeldung sehr viel früher angezeigt und ist mehr problemorientiert als eine Fehlermeldung, die auftritt, wenn dieser Switch nicht verwendet wird.
Wenn Sie die x86-Flag in der Option festlegen und anschließend die Anwendung auf einem 64-Bit-Computer ausgeführt wird, wird die Anwendung im WOW-Subsystem statt nativ ausgeführt.
Auf einem 64-Bit-Windows-Betriebssystem:
Kompilierte Assemblys mit /platform:x86 werden in der 32-Bit-CLR unter WOW64 ausgeführt.
Kompilierte ausführbare Dateien mit dem /platform:anycpu werden in der 64-Bit-CLR ausgeführt.
Eine mit der /platform:anycpu kompilierte DLL wird in derselben CLR wie der Prozess, in den sie geladen wurde, ausgeführt.
Ausführbare Dateien, die mit /platform:anycpu32bitpreferred kompiliert werden, werden in der 32-Bit-CLR ausgeführt.
Weitere Informationen zum Entwickeln einer Anwendung, die auf einer 64-Bit-Version von Windows ausgeführt wird, finden Sie unter 64-Bit-Anwendungen.
Festlegen der / Platform in Visual Studio-IDE
Wählen Sie im Lösungs-Explorer das Projekt, öffnen Sie das Menü Projekt und klicken Sie dann auf Eigenschaften.
Weitere Informationen finden Sie unter Introduction to the Project Designer.
Wählen oder deaktivieren Sie auf der Registerkarte Kompilieren das Kontrollkästchen 32-bit bevorzugen oder wählen Sie in der Liste Ziel-CPU einen Wert aus.
Weitere Informationen finden Sie unter Seite "Kompilieren", Projekt-Designer (Visual Basic).
Beispiel
Das folgende Beispiel veranschaulicht, wie die /platform-Compileroption genutzt wird.
vbc /platform:x86 myFile.vb
Siehe auch
Referenz
Beispiele für Kompilierungsbefehlszeilen (Visual Basic)