Compartir a través de


-platform (Visual Basic)

Especifica qué versión de plataforma de Common Language Runtime (CLR) puede ejecutar el archivo de salida.

Sintaxis

-platform:{ x86 | x64 | Itanium | arm | anycpu | anycpu32bitpreferred }  

Argumentos

Término Definición
x86 Compila el ensamblado que va a ejecutar clR compatible con x86 de 32 bits.
x64 Compila el ensamblado que va a ejecutar clR de 64 bits en un equipo que admita el conjunto de instrucciones AMD64 o EM64T.
Itanium Compila el ensamblado que va a ejecutar clR de 64 bits en un equipo con un procesador Itanium.
arm Compila el ensamblado que se va a ejecutar en un equipo con un procesador ARM (máquina RISC avanzada).
anycpu Compila el ensamblado para que se ejecute en cualquier plataforma. La aplicación se ejecutará como una aplicación de 32 bits en versiones de 32 bits de Windows y como una aplicación de 64 bits en versiones de 64 bits de Windows. Esta marca es el valor predeterminado.
anycpu32bitpreferred Compila el ensamblado para que se ejecute en cualquier plataforma. La aplicación se ejecutará como una aplicación de 32 bits en versiones de 32 y 64 bits de Windows. Esta marca solo es válida para ejecutables (.EXE) y requiere .NET Framework 4.5.

Observaciones

Use la -platform opción para especificar el tipo de procesador de destino del archivo de salida.

En general, los ensamblados de .NET Framework escritos en Visual Basic se ejecutarán igual independientemente de la plataforma. Sin embargo, hay algunos casos que se comportan de forma diferente en distintas plataformas. Estos casos comunes son:

  • Estructuras que contienen miembros que cambian de tamaño en función de la plataforma, como cualquier tipo de puntero.

  • Aritmética de puntero que incluye tamaños constantes.

  • Invocación incorrecta de la plataforma o declaraciones COM que utilicen Integer para los controladores en lugar de IntPtr.

  • Convertir IntPtr en Integer.

  • Usar invocación de plataforma o interoperabilidad COM con componentes que no existen en todas las plataformas.

La opción -platform mitigará algunos problemas si sabe que ha realizado suposiciones sobre la arquitectura en la que se ejecutará el código. Concretamente:

  • Si decide establecer como destino una plataforma de 64 bits y la aplicación se ejecuta en una máquina de 32 bits, el mensaje de error viene mucho antes y está más dirigido al problema que el error que se produce sin usar este modificador.

  • Si establece la x86 marca en la opción y la aplicación se ejecuta posteriormente en una máquina de 64 bits, la aplicación se ejecutará en el subsistema WOW en lugar de ejecutarse de forma nativa.

En un sistema operativo de Windows de 64 bits:

  • Los ensamblados compilados con -platform:x86 se ejecutarán en clR de 32 bits que se ejecuta en WOW64.

  • Los ejecutables compilados con se -platform:anycpu ejecutarán en CLR de 64 bits.

  • Un archivo DLL compilado con -platform:anycpu se ejecutará en el mismo CLR que el proceso en el que se cargó.

  • Los ejecutables que se compilan con -platform:anycpu32bitpreferred se ejecutarán en CLR de 32 bits.

Para obtener más información sobre cómo desarrollar una aplicación para que se ejecute en una versión de 64 bits de Windows, consulte Aplicaciones de 64 bits.

Para establecer -platform en el IDE de Visual Studio

  1. En el Explorador de soluciones, elija el proyecto, abra el menú Proyecto y, a continuación, haga clic en Propiedades.

  2. En la pestaña Compilar , active o desactive la casilla Preferir 32 bits , o bien, en la lista CPU de destino, elija un valor.

    Para obtener más información, vea Compilar página, Diseñador de proyectos (Visual Basic) .

Ejemplo

En el ejemplo siguiente se muestra cómo usar la -platform opción del compilador.

vbc -platform:x86 myFile.vb  

Consulte también