Pregunta

¿Cuál es la mejor manera de usar InstallShield para generar instaladores para entornos de 32 y 64 bits? La mayoría de mi aplicación es neutral en bits (.net, Java, archivos de datos). Preferiría que solo tuviera que empaquetar esos archivos una vez. ¿Existe un enfoque estándar para reducir el mantenimiento de los proyectos installshield? Actualmente, la única solución que puedo encontrar es tener dos proyectos duplicados, donde cada uno de los componentes está marcado con 64 bits y el directorio de instalación predeterminado establecido en ProgramFiles64. ¡Debe haber una mejor manera de hacer esto!

Solo una porción muy pequeña de mi aplicación se preocupa por los bits en los que se ejecuta. Tenemos algunas DLL de C ++ y llamadas JNI que deben ser diferentes. La mayor parte de esto se determina en tiempo de ejecución comprobando si el JRE en el que estamos ejecutando es de 64 bits.

Me gustaría evitar distribuir dos archivos de 130 MB, e idealmente enviar un gran archivo zip que tenga ambos instaladores, cada uno de los cuales hace referencia a componentes comunes. ¿Necesito crear módulos de fusión para las cosas comunes y hacer referencia a ellos en cada uno de los proyectos?

Estamos utilizando InstallShield 2009 (Premier) si eso es importante.

¿Fue útil?

Solución

  • Si puede salirse con la suya al tener cero componentes de 64 bits en su configuración, entonces puede hacer que sea una configuración 100% de 32 bits, y funcionará igualmente bien en 32 bits y 64 bits Windows.

  • Si eso no es posible, recomiendo usar los indicadores de configuración del producto. En los " Lanzamientos " ver, crear múltiples configuraciones de productos, como "XP32" y "XP64". Marque el campo Resumen de plantilla según corresponda: uno como " Intel; 1033 " y el otro como "AMD64; 1033". Asociar cada uno con un distintivo de configuración de producto único para identificarlo, p. " xp32 " ;, " xp64 " ;. Luego, para cada función, configure el indicador de lanzamiento apropiado. Puede establecer la propiedad de 64 bits en sus componentes de 64 bits según sea necesario; solo asegúrese de que las características que marque como "xp32" no tienen componentes de 64 bits en ellos. Esto le permitirá tener solo 1 archivo de proyecto InstallShield, pero generar versiones de 32 bits y de 64 bits.

Otros consejos

Si usa un solo proyecto de configuración de 32 bits como se menciona en este hilo, puede tener problemas para ejecutar procesos de 32 bits en sistemas de 64 bits, dependiendo de lo que esté haciendo. Como su configuración es un proceso de 32 bits, el sistema operativo supone que necesita utilizar recursos de 32 bits. En máquinas de 64 bits, tiene ambas. Por ejemplo, system32 y SysWOW64. (Curiosamente, el sistema32 aloja los recursos de 64 bits mientras que el SysWOW64 es de 32 bits). Puede forzar al sistema operativo a utilizar los recursos de 64 bits utilizando el redirector del sistema de archivos SYSNATIVE. Encontré esto útil al configurar IIS usando DISM.exe o PKGMGR.exe en Windows Server 2008R2 y 2012.

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