-platform (Visual Basic)
Určuje, která verze platformy modulu CLR (Common Language Runtime) může spustit výstupní soubor.
Syntaxe
-platform:{ x86 | x64 | Itanium | arm | anycpu | anycpu32bitpreferred }
Argumenty
Pojem | definice |
---|---|
x86 |
Zkompiluje sestavení tak, aby bylo spuštěno 32bitovým clr kompatibilním s x86. |
x64 |
Zkompiluje sestavení tak, aby bylo spuštěno 64bitovým CLR na počítači, který podporuje instrukční sadu AMD64 nebo EM64T. |
Itanium |
Zkompiluje sestavení tak, aby bylo spuštěno 64bitovým CLR na počítači s procesorem Itanium. |
arm |
Zkompiluje sestavení tak, aby bylo spuštěno na počítači s procesorem ARM (Advanced RISC Machine). |
anycpu |
Zkompiluje sestavení tak, aby bylo spuštěno na libovolné platformě. Aplikace se spustí jako 32bitová aplikace ve 32bitových verzích Windows a jako 64bitová aplikace v 64bitových verzích Windows. Tento příznak je výchozí hodnota. |
anycpu32bitpreferred |
Zkompiluje sestavení tak, aby bylo spuštěno na libovolné platformě. Aplikace se spustí jako 32bitová aplikace v 32bitové i 64bitové verzi Windows. Tento příznak je platný pouze pro spustitelné soubory (.EXE) a vyžaduje rozhraní .NET Framework 4.5. |
Poznámky
-platform
Pomocí možnosti určete typ procesoru, na který cílí výstupní soubor.
Obecně platí, že sestavení rozhraní .NET Framework napsaná v jazyce Visual Basic budou spouštět stejné bez ohledu na platformu. Existují však některé případy, které se chovají odlišně na různých platformách. Mezi běžné případy patří:
Struktury, které obsahují členy, které mění velikost v závislosti na platformě, například jakýkoli typ ukazatele
Aritmetika ukazatele, která zahrnuje konstantní velikosti.
Nesprávná platforma vyvolá nebo deklarace modelu COM, které se používají
Integer
pro popisovače místo IntPtr.Přetypování IntPtr na
Integer
.Použití volání platformy nebo zprostředkovatele komunikace modelu COM s komponentami, které neexistují na všech platformách.
Možnost -platformu zmírní některé problémy, pokud víte, že jste provedli předpoklady o architektuře, na které bude váš kód běžet. Konkrétně:
Pokud se rozhodnete cílit na 64bitovou platformu a aplikace běží na 32bitovém počítači, chybová zpráva se zobrazí mnohem dříve a je cílenější na problém než chyba, ke které dochází bez použití tohoto přepínače.
Pokud nastavíte
x86
příznak u možnosti a aplikace se následně spustí na 64bitovém počítači, aplikace se místo nativně spustí v subsystému WOW.
V 64bitovém operačním systému Windows:
Sestavení zkompilovaná pomocí
-platform:x86
se spustí na 32bitovém modulu CLR spuštěném pod WOW64.Spustitelné soubory zkompilované pomocí
-platform:anycpu
64bitového modulu CLR se spustí.Knihovna DLL zkompilovaná pomocí
-platform:anycpu
příkazu se spustí na stejném CLR jako proces, do kterého se načetl.Spustitelné soubory kompilované pomocí
-platform:anycpu32bitpreferred
se spustí na 32bitovém modulu CLR.
Další informace o tom, jak vyvíjet aplikaci pro spuštění v 64bitové verzi Systému Windows, naleznete v tématu 64bitové aplikace.
Nastavení platformy v integrovaném vývojovém prostředí sady Visual Studio
V Průzkumník řešení zvolte projekt, otevřete nabídku Projekt a klepněte na příkaz Vlastnosti.
Na kartě Kompilace zaškrtněte políčko Preferovat 32bitovou verzi nebo v seznamu Cílový procesor zvolte hodnotu.
Další informace naleznete v tématu Kompilovat stránku, Návrhář projektu (Visual Basic).
Příklad
Následující příklad ukazuje, jak použít možnost kompilátoru -platform
.
vbc -platform:x86 myFile.vb