Pregunta

¿Qué opción debo seleccionar para cumplir los ensamblajes en una plataforma de 64 bits para un servidor de plataforma de 32 bits? Como actualmente estoy tratando de publicar en un servidor de 32 bits. Estoy usando VS2005 en una máquina con Windows Vista para construir mi proyecto y luego publicarlo en el servidor, pero recibo errores. Alguna idea de cómo puedo resolver este problema.

¿Debo usar la opción AnyCPU en una máquina de 64 bits o una opción de plataforma mixta? También la opción de x86 está desactivada y no sé por qué.

¿Fue útil?

Solución

Suponiendo que está trabajando en un lenguaje administrado, la compilación a 'AnyCPU' debe ser multiplataforma (64/32 bit), porque la IL generada no se convierte en instrucciones de la máquina hasta que el código se JITted cuando se ejecuta.

Hay muy pocas excepciones en las que puedes obtener dependencias de bit-ness si usas ciertas construcciones que se basan en el tamaño de los punteros, etc., pero estas generalmente no aparecen en tu código, aunque no estaría mal para ejecutar FxCop sobre su código para asegurarse (hay una sección en FxCop que trata sobre la portabilidad que cubre estos problemas)

Otros consejos

Use AnyCPU. Siempre que su ensamblaje no tenga dependencias no administradas directas o dependencias de ensamblajes que estén marcadas para una CPU específica, entonces su ensamblaje funcionará bien en 64 o 32 bits

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top