tag - Visual Studio: DLL diferentes para configuraciones
visual studio code autocomplete html (3)
Me gustaría hacer una versión x86 y x64 de mi aplicación porque algunas de las bibliotecas que estoy usando tienen diferencias para x86 y x64 (por ejemplo, SQLite). Hice una nueva configuración para las versiones de lanzamiento que tiene como sistema operativo de destino "x64".
¿Hay alguna forma de definir diferentes DLL para la configuración, por ejemplo, usar SQLite.dll para la versión x86 y SQLite64.dll para la versión x64?
- Desafortunadamente, no puedo usar la opción "cualquier plataforma", que es la predeterminada, debido a esas DLL no compatibles con x64.
- Quiero admitir x64 real y no ejecutar una aplicación de 32 bits en un sistema operativo x64.
¿Qué versión de VS? ¿En qué idioma estás desarrollando? Si es C ++ nativo (= no administrado), prácticamente todas las configuraciones, incluidas las bibliotecas usadas, se pueden establecer de manera diferente para cada configuración. En la parte superior del cuadro de diálogo de propiedades del proyecto, simplemente elija qué configuración de configuración le gustaría modificar.
Necesita una condición para la referencia dll en el archivo de proyecto.
Esto hará que Visual Studio vuelva a verificar la condición y la referencia cada vez que cambie la configuración activa.
Simplemente añada una condición para cada configuración.
Ejemplo:
<ItemGroup Condition=" ''$(Configuration)|$(Platform)'' == ''Release|x86'' ">
<Reference Include="DLLName">
<HintPath>../DLLName.dll</HintPath>
</Reference>
<ProjectReference Include="../MyOtherProject.vcxproj">
<Project>{AAAAAA-000000-BBBB-CCCC-TTTTTTTTTT}</Project>
<Name>MyOtherProject</Name>
</ProjectReference>
</ItemGroup>
Puede agregar condiciones a las referencias dll en el archivo del proyecto, pero no puede hacerlo utilizando Visual Studio; tendrá que editar manualmente los archivos del proyecto. Vea this para saber cómo hacerlo.
Lo que debe hacer es incluir una referencia a la dll de 32 bits solo en la configuración de compilación de 32 bits, y una referencia a la dll de 64 bits en la configuración de compilación de 64 bits.