-platform (Visual Basic)
Anger vilken plattformsversion av CLR (Common Language Runtime) som kan köra utdatafilen.
Syntax
-platform:{ x86 | x64 | Itanium | arm | anycpu | anycpu32bitpreferred }
Argument
Period | Definition |
---|---|
x86 |
Kompilerar sammansättningen som ska köras av 32-bitars, x86-kompatibel CLR. |
x64 |
Kompilerar sammansättningen som ska köras av 64-bitars CLR på en dator som stöder INSTRUKTIONSUPPSÄTTNINGEN AMD64 eller EM64T. |
Itanium |
Kompilerar din sammansättning som ska köras av 64-bitars CLR på en dator med en Itanium-processor. |
arm |
Kompilerar sammansättningen som ska köras på en dator med en ARM-processor (Advanced RISC Machine). |
anycpu |
Kompilerar sammansättningen så att den körs på valfri plattform. Programmet körs som ett 32-bitarsprogram på 32-bitarsversioner av Windows och som ett 64-bitarsprogram i 64-bitarsversioner av Windows. Den här flaggan är standardvärdet. |
anycpu32bitpreferred |
Kompilerar sammansättningen så att den körs på valfri plattform. Programmet körs som ett 32-bitarsprogram på både 32- och 64-bitarsversioner av Windows. Den här flaggan är endast giltig för körbara filer (.EXE) och kräver .NET Framework 4.5. |
Kommentarer
Använd alternativet -platform
för att ange vilken typ av processor som mål för utdatafilen.
I allmänhet körs .NET Framework-sammansättningar skrivna i Visual Basic på samma sätt oavsett plattform. Det finns dock vissa fall som beter sig annorlunda på olika plattformar. Dessa vanliga fall är:
Strukturer som innehåller medlemmar som ändrar storlek beroende på plattform, till exempel valfri pekartyp.
Pekarearitmetik som innehåller konstanta storlekar.
Felaktiga plattformsanrop eller COM-deklarationer som använder
Integer
för referenser i stället IntPtrför .Gjutning IntPtr till
Integer
.Använda plattformsanrop eller COM-interop med komponenter som inte finns på alla plattformar.
Alternativet -platform åtgärdar vissa problem om du vet att du har gjort antaganden om arkitekturen som koden kommer att köras på. Specifikt:
Om du bestämmer dig för att rikta in dig på en 64-bitarsplattform och programmet körs på en 32-bitars dator, kommer felmeddelandet mycket tidigare och är mer riktat mot problemet än det fel som uppstår utan att använda den här växeln.
Om du anger
x86
flaggan för alternativet och programmet därefter körs på en 64-bitars dator körs programmet i WOW-undersystemet i stället för att köras internt.
På ett 64-bitars Windows-operativsystem:
Sammansättningar som kompileras med
-platform:x86
körs på 32-bitars CLR som körs under WOW64.Körbara filer som kompilerats med
-platform:anycpu
körs på 64-bitars CLR.En DLL som kompilerats med
-platform:anycpu
körs på samma CLR som den process som den lästes in i.Körbara filer som kompileras med
-platform:anycpu32bitpreferred
körs på 32-bitars CLR.
Mer information om hur du utvecklar ett program som ska köras på en 64-bitarsversion av Windows finns i 64-bitarsprogram.
Så här ställer du in -platform i Visual Studio IDE
I Solution Explorer väljer du projektet, öppnar menyn Projekt och klickar sedan på Egenskaper.
På fliken Kompilera markerar eller avmarkerar du kryssrutan Föredrar 32-bitars, eller i listan Mål-CPU väljer du ett värde.
Mer information finns i Kompileringssida , Projektdesigner (Visual Basic).
Exempel
I följande exempel visas hur du använder kompilatoralternativet -platform
.
vbc -platform:x86 myFile.vb