Pregunta

He creado un MSI que también incluye el archivo de instalador para Crystal Report (credist2008_x86.msi). Me gustaría ejecutar el Report de Crystal MSI junto con el instalador principal. Entiendo, tengo que usar algún tipo de acción personalizada, pero no estoy seguro de la forma exacta de hacerlo.

Quizás los pasos serían

i) Deje que la instalación principal finalice ii) ejecute el "credista2008_x86.msi" usando el comando msiexec [no estoy seguro de cómo hacer esto

¿Alguien podría proporcionarme orientación sobre cómo lograr esto?

¿Fue útil?

Solución

Hay dos enfoques para esto:

  1. Agregue el instalador de Crystal Reports como un requisito previo. La mayoría de las herramientas de autoría de configuración admiten esto y es el método recomendado.

  2. Cree una acción personalizada que inicie el segundo instalador. Windows Installer no tiene una acción personalizada predefinida para iniciar otras MSI como archivos normales, pero puede intentar crear un EXE personalizado que use ShellexCute para iniciar el archivo MSI.

Para ejecutar otro instalador de MSI en el extremo de instalación, debe programarlo después de installfinalize Action y ejecutarlo con el msidbcustomactionTypeasync y msidbcustomactionTypeContinue banderas:http://msdn.microsoft.com/en-us/library/aa368071(vs.85).aspx

Otros consejos

Tu mejor opción es usar un bootstrapper (he escuchado cosas buenas sobre lo gratis dotnetinstaller, o hay alternativas comerciales disponibles)

Luego configure su bootstrapper para hacer lo siguiente:

  • Verifique los informes de cristal, instale si no está presente
  • Verifique cualquier otra dependencia, intente instalar si no está presente
  • Ejecute su archivo de configuración (que debería hacer estas verificaciones nuevamente, y abortar si las dependencias aún no están instaladas)

Por ejemplo, con el bootstrapper que uso, verificamos

  • Windows Installer 3.1
  • .NET 2.0+

Si no están presentes, se descargan de la red y se instalan automáticamente. Todo esto sucede antes de que comience la instalación principal.

Espero que ayude :)

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