2008-10-02 17 views
6

Existen muchas herramientas para crear instaladores en Windows (InstallShield, InnoSetup, NSIS, solo por nombrar algunas). Todas las herramientas que he visto se encuentran en una o ambas de estas categoríasAPI para crear instaladores en Windows

  • Señalar y hacer clic. Una buena GUI para crear el instalador, pero la definición del instalador/archivo de proyecto no se puede editar manualmente.
  • Textfile: No (oficial) GUI. El instalador se compila a partir de una definición en un archivo de texto que se edita manualmente.

Los instaladores que estoy construyendo están definidos utilizando una DSL (representada como archivos YAML), por lo que no es posible utilizar una GUI y crear archivos de texto es engorroso aunque factible.

Lo que realmente me gustaría es una herramienta que expone una API (completa), a través de la cual puedo controlar la creación del instalador. ¿Hay alguna de esas herramientas por ahí?

Editar: También me encantaría saber acerca de las herramientas que no son basadas en MSI. MSI no es un requisito (más bien al revés ...)

Respuesta

6

Wix 3.0 beta tiene soporte para .NET incluido para este propósito. No sé qué tan bien funciona, pero incluye documentación. Es un marco de tipos para manipular el proceso de creación de la instalación y toda esa bondad, por lo que no creo que incluso necesite escribir una línea de WiX XML si no lo desea.

1

WiX es una gran herramienta, pero tendrá que hacer mucha codificación directa para que las cosas sucedan. Afortunadamente, la documentación es bastante buena y hay varias herramientas GUI, como WixEdit en SourceForge para ayudar en el proceso.

+0

WiX 3.0 tiene un marco de programación donde no necesita escribir los archivos wix. Echale un vistazo. –

0

Bueno, existe la API de Windows Installer que puede utilizar para crear archivos MSI directamente, sin embargo, creo que sería mejor usar WiX.

La "codificación directa" será mucho menor que tratar directamente con la API de Windows Installer, supongo que probablemente sea demasiado "baja" para lo que necesita. Dependiendo de lo que esté buscando hacer, podría usar WiX para generar un MSI y luego modificarlo usando la API.

¿Qué pasa con la generación de XML? Esa será realmente tu opción más simple ... no necesitarás editarla manualmente, solo escribe tu propio código para generar el XML requerido de tus archivos DSL y algunas plantillas.

+0

Generar XML es aceptable: puedo agregar mi propia capa funcional en la parte superior. Generar un archivo de texto a la NSIS (que es más un lenguaje de programación) no es tan aceptable, ya que es mucho más libre y tengo que lidiar con citas, etc. – JesperE

Cuestiones relacionadas