visual studio configuracion compilar administrador active c# .net visual-studio

c# - studio - Plataforma de solución activa VS Project Platform VS Platform target



visual studio compilar en 32 bits (1)

Quiero que mi aplicación se compile para x64 (porque estoy usando x64 dlls). En el administrador de configuración, he establecido "Plataforma de solución activa" en "x64" Sin embargo, en la lista de proyectos, la plataforma está configurada en "x86". "Objetivo de plataforma" en las propiedades del proyecto también se establece en "x86"

Estoy totalmente confundido, hay tres lugares para establecer la plataforma de destino:

  • Gestor de configuración: plataforma de solución activa.
  • Gestor de configuración: plataforma de proyectos.
  • Propiedades del proyecto: objetivo de la plataforma.

Por ejemplo, puedo establecer la plataforma de solución activa en x64, la plataforma de proyecto en x86 y el objetivo del proyecto en x64. ¿Qué significará eso?

¿Alguien puede describir qué significa exactamente cada una de estas opciones y cómo se supone que deben usarse juntas? ¿Cómo compilar a x64?


La Active Solution Platform le permite configurar una combinación específica de configuraciones para cada proyecto. La plataforma de proyectos le permite realizar ajustes de configuración específicos para un proyecto. Estas dos configuraciones en realidad no dicen nada sobre con qué plataforma se construirán la solución y los proyectos, es solo un conjunto de configuración para el que puede cambiar la configuración real.

De forma predeterminada, la configuración de x64 establece que el proyecto se compile específicamente para x64, pero eso se puede cambiar en las propiedades del proyecto a través de la propiedad de Objetivo de la Plataforma del proyecto (aunque sería muy confuso cambiar el destino de un conjunto de configuración existente para que no sea su nombre).

La propiedad Target de plataforma de cada proyecto es la configuración que se usa para indicar en qué plataforma se compila el ensamblado del proyecto. Una configuración de AnyCPU es la configuración recomendada si ese proyecto no tiene ninguna dependencia de los componentes que requieren una plataforma específica para funcionar.

La configuración de AnyCPU hará que el ensamblaje sea JIT: ed

  • x86 en plataformas de 32 bits
  • x64 en plataformas de 64 bits

Vea esta pregunta para más información.

En cuanto a su ejemplo, establecer la plataforma de solución activa en x64, la plataforma de proyecto en x86 y el objetivo del proyecto en x64 significaría que al seleccionar la configuración de la solución, el ensamblado del proyecto se construiría para JIT solo a 64 bits, lo que provocaría un error si intentaba ejecutar en una plataforma de 32 bits.

La configuración x64 se debe usar si tiene una dependencia de un recurso de solo 64 bits, como una DLL de 64 bits. En consecuencia, la configuración x86 se debe usar si tiene una dependencia en un recurso de 32 bits solamente.

La configuración del administrador de configuración se puede usar para cambiar la forma en que se crean los proyectos, por ejemplo, usar diferentes ensamblajes de referencia para x86 / x64 o incluso para depurar / lanzar, como en esta pregunta . El conjunto de configuración se representa como variables que se pueden usar dentro de la configuración de compilación para controlar qué incluir y qué tareas de compilación se ejecutan para una configuración específica. Eche un vistazo dentro de un archivo de proyecto con el bloc de notas y verá cómo se usa.