Hoy hablaremos de EXE vs MSI.
La manera más común es automatizar la instalación utilizando un script, y en muchos casos las misma aplicaciones aceptan parámetros estilo /s para instalaciones silenciosas.
Existen muchos tipos de archivos de instalación. El más conocido el .exe (por ejemplo setup.exe)que en realidad puede ser una aplicación cualquiera y no solo un archivo de instalación. El más utilizado son los archivos de instalación .msi , que en realidad es un archivo de base de datos que es utilizado por Windows Installer.
Windows Installer as algo razonablemente nuevo. Muy a menudo archivos de instalación MSI integran un archivo EXE (setup.exe). Este EXE es llamado boostrapper. Este archivo no instala la aplicación, sino comprueba la versión correcta dl Windows Installer está instalada en el equipo , y en caso negativo ejecuta la versión redistribuible de Windows Installer (MsiInstA.exe o MsiInstW.exe según la versión). Una vez la comprobación cumple los requisitos el archivo MSIEXEC.EXE ejecuta el archivo MSI.
MSI es un archivo de base de datos que contiene información sobre una aplicación, y está dividida en atributos y componentes. Cada uno de los componentes puede contener archivos, información de registro, accesos directos, y mucho más.
De manera nativa archivos MSI aceptan por parte de Windows Installer MSIEXEC.EXE, una serie de parámetros como /quiet y /norestart.
Una line de comando standard para lanzar una instalación de un archivo MSI tiene el siguiente formato:
MSIEXEC /s aplicación.msi
También se pueden aplicar archivos MST transformation files, archivos de transformación, que son cambios al archivo original MSI, pero que se aplican con una extensión .MST, de esta manera el archivo original se queda intacto, muy importante para mantener el soporte del fabricante. El archivo MST contiene transformaciones a la información original del archivo MST para solucionar problemas de compatibilidad de aplicaciones con el sistema operativo, o simplemente para seleccionar algunas opciones por defecto y hasta para automatizar por completo la instalación de un MSI sin que sea necesaria la intervención del usuario. Esto es muy común en instalaciones de Adobe Reader.
msiexec /I AdbeReader.msi /q TRANSFORMS=AdbeReader.mst
Saludos
David Nudelman