Dela via


-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

  1. I Solution Explorer väljer du projektet, öppnar menyn Projekt och klickar sedan på Egenskaper.

  2. 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  

Se även