2009-02-20 11 views
11

Estoy a punto de comenzar un nuevo proyecto InstallShield. Hay tres opciones para el tipo de proyecto:Elegir un tipo de proyecto InstallShield

  1. básico MSI
  2. InstallScript
  3. InstallScript-MSI

¿Cuáles son las ventajas y desventajas de cada uno? ¿Cuál debería elegir?

+0

Por favor, lea mis comentarios a continuación. ** Evite el tipo de proyecto Installscript MSI a toda costa **. –

Respuesta

18

MSI básico:

Este es el tipo de instalación estándar. Utiliza Windows Installer para casi toda la instalación (los prerrequisitos, la selección de idioma y algunos otros aspectos son manejados por setup.exe). Una MSI es una base de datos con muchas tablas que describen cómo funciona la instalación. El número de tablas puede ser un poco abrumador al principio, pero InstallShield hace un buen trabajo al abstraerlo; la mayoría de las veces, no necesita editar directamente las tablas de la base de datos.

Este es el tipo de instalación más común, por lo que hay mucha información disponible al respecto. El InstallShield forum es una gran fuente de información. Además, muchas instalaciones usan MSI, por lo que si las comprende, será más fácil entender lo que hacen otras instalaciones (por ejemplo, si necesita instalar MSI de otro fabricante como parte de su instalación). Las instalaciones silenciosas se pueden realizar fácilmente con un argumento de línea de comando.

Desafortunadamente, dado que el MSI controla la instalación a través de las tablas de la base de datos, hay un poco de una curva de aprendizaje. Si terminas teniendo que editar directamente las tablas MSI, puede ser confuso al principio ya que hay muchas tablas y algunos de sus propósitos e interacciones son sutiles. Además, crear y secuenciar diálogos es más difícil en una MSI ya que todas las interacciones deben ser controladas por tablas. Se pueden crear cuadros de diálogo MSI personalizados, pero solo en C++.

Recomendaría este tipo de proyecto para la mayoría de los usos.

InstallScript:

Estos proyectos utilizar un script de instalación para instalar el software en lugar de Windows Installer. Como el script de instalación es un programa lineal, puede ser más fácil entender cómo funciona. Una ventaja de este tipo de proyecto es que crear y secuenciar diálogos es más fácil. Además, los diálogos de InstallScript se pueden despellejar y verse un poco mejor que los cuadros de diálogo de MSI. La ejecución de una instalación silenciosa requiere un "archivo de respuesta" separado para controlar la IU. No recomendaría usar este tipo de proyecto a menos que tenga un motivo específico (por ejemplo, si tiene que controlar con mucha precisión el comportamiento de la instalación de una manera que no es compatible con MSI).

InstallScript MSI:

Esto es esencialmente un proyecto MSI básico que utiliza InstallScript para controlar la interfaz de usuario y un MSI para controlar la instalación real. Tiene la ventaja de utilizar un MSI para controlar la instalación, pero trabajar con diálogos es más fácil. Todavía requiere un archivo de respuesta para controlar la IU durante una instalación silenciosa. Si no le importan las instalaciones silenciosas o tiene una secuencia de diálogo de IU complicada, puede encontrar este tipo de proyecto útil.

+5

Tómelo desde las trincheras: nunca use installscript MSI.Es extremadamente problemático, causa todo tipo de problemas para la implementación corporativa y, en general, anula el propósito y los beneficios de MSI como tecnología de implementación. Podría seguir y seguir sobre esto, pero no perderé su tiempo. Toma mi palabra y evita muchos problemas. Las opciones son MSI básico si desea las capacidades de implementación de MSI o InstallScript si necesita un script de implementación de estilo heredado. MSI tiene una curva de aprendizaje, pero mejora en gran medida la implementación corporativa. –

+0

@ kevin-kibler Me doy cuenta de que ha pasado un tiempo, pero ¿podría actualizarse para que cubra Advance UI Project? – x5657

+0

Lo siento, no estoy familiarizado con eso. No he usado InstallShield en muchos años. He estado usando wix para manejar mis (muy limitadas) necesidades de instalación últimamente. –

Cuestiones relacionadas