Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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
Integerpara 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
x86marca 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:x86se ejecutarán en clR de 32 bits que se ejecuta en WOW64.Los ejecutables compilados con se
-platform:anycpuejecutarán en CLR de 64 bits.Un archivo DLL compilado con
-platform:anycpuse ejecutará en el mismo CLR que el proceso en el que se cargó.Los ejecutables que se compilan con
-platform:anycpu32bitpreferredse 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
En el Explorador de soluciones, elija el proyecto, abra el menú Proyecto y, a continuación, haga clic en Propiedades.
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