2009-05-28 8 views
26

He leído un montón de documentación sobre instaladores y no he encontrado nada bueno que explique los conceptos subyacentes. La mayoría del software de instalación que he encontrado se basa en la misma estructura de "base de datos" que simplemente no entiendo en absoluto.¿Existe alguna documentación definitiva sobre cómo escribir instaladores de software?

Toda la documentación que viene con los diferentes productos, es decir, WiX, InstallAware, Wise, InstallShield, etc., espero que entienda estos conceptos subyacentes [que simplemente no entiendo] para seguir de lo que están hablando .

¿Alguien puede indicarme en la dirección de la documentación que explica los conceptos de los instaladores de software para que la documentación del software realmente tenga sentido?

+0

Gran pregunta. He creado un artículo de blog para abordar esto: http://blog.deploymentengineering.com/2010/07/back-to-basics-i.html –

Respuesta

3

Este (MSDN, About Windows Installer) es el ser Primer lugar de inicio para obtener una buena información "general" sobre la instalación en Windows. Todos los instaladores que están "basados ​​en msi" se relacionarán con estos conceptos.

El único "otro" tipo de instalador (en el mundo de las ventanas) es NSIS, que realmente no es para instalaciones empresariales (no quiero iniciar un debate sobre instaladores de procedimientos y no de procedimientos aquí).

Instalar cosas es REALMENTE complejo con conceptos avanzados como publicidad, restaurar puntos, parches y transformaciones y cosas por el estilo, pero cuando 'lo obtienes' puedes hacer cosas geniales, como work-around para obtener TFS 2008 usando SQL 2008 .

TFS 2008 no admite SQL 2008, pero TFS 2008 SP1 hace, así que lo que tiene que hacer es "parche" de la TFS 2008 RTM instalar con el TFS 2008 SP1 instalar con un comando como este:

msiexec /a C:\TFS\RTM\AT\vs_setup.msi /p C:\TFS\SP1Extract\TFS90sp1-KB949786.msp TARGETDIR=C:\TFS\ATIntegrated 

pero el resultado es algo que no se puede repartir como "TFS 2008 con SP1".

+0

¿Hay instaladores de nota no basados ​​en MSI? El concepto completo de instaladores de MSI simplemente no tiene sentido para mí. ¿Hay algún otro concepto de instalador notable/viable para Windows? – BobTheBuilder

+0

Tanto si le gustan los MSI como si no, esto es lo que usa Microsoft, lo que Visual Studio crea y lo que el panel de control Agregar/Quitar incluye. Puede crear un instalador basado en EXE, pero está renunciando a mucho que proporcionan las MSI y tendrá que trabajar mucho más. –

+0

La única "nota" que no es de MSI es NSIS. Generalmente utilizado por los programadores que han dejado de intentar responder la pregunta que usted está haciendo;) – saschabeaumont

2

La mejor introducción a Windows Installers que he visto es Phil Wilson ’ s book Definitive Guide to Windows Installer. Esto fue escrito en 2004 y no tiene características específicas de Vista o Win7.

El mejor sitio que he visto para Windows Installers es www.installsite.org. Tiene algunos artículos introductorios, pero está dirigido a expertos.

1

Si sus necesidades de instalación no son terriblemente complejas, le sugiero que pruebe InnoSetup. Lo utilicé en un conjunto de instaladores de aplicaciones de Windows hace unos años y no tuve quejas. Mucho más simple que InstallShield y MSI, pero su millaje puede variar.

No estoy de ninguna manera afiliado con InnoSetup.

+0

La mayoría de los problemas que he tenido no han sido con instalaciones básicas, la mayoría de ellos son bastante fáciles de usar para cosas básicas. Es cuando necesita hacer algo fuera de lo básico, es decir, agrega formularios personalizados y funcionalidad que se vuelve completamente ininteligible. – BobTheBuilder

0

Un buen lugar para aprender cómo funcionan los instaladores es mirando el código.

+0

Tiendo a recomendar no mirar el código fuente de NSIS para aprender a instalar (en Windows), realmente no se relaciona con lo que usaron todos los otros métodos. En cuanto a Inno, nunca llegué a eso. – JasonRShaver

16

actualización - desde mi post original, WiX: A Developers Guide to Windows Installer XML ha sido puesto en libertad y también es un buen recurso para los principiantes. (Aunque no me gustó tanto.) Todavía sugiero leer The Definitive Guide to Windows Installer como punto de partida. Windows Installer y WiX no son algo que solo retome en unos días, llevará unos meses.


Ir recoger una copia de The Definitive Guide to Windows Installer. He perdido la cuenta de cuántas veces lo he recomendado a las personas que se están quedando estancadas con los conceptos y están luchando por comprender cómo funciona Windows Installer. Asegúrate de agarrar el Windows Installer SDK también.

Entender con Windows Installer es la primera etapa de su aprendizaje; una vez que se ha comprendido, entenderá cómo funciona InstallShield (o no funciona según sea el caso). Wise, InstallShield, etc. intentan protegerte de los conceptos subyacentes y tienen sus propios engaños/trucos para evitar las limitaciones de Windows Installer.

La segunda etapa (si usted es serio acerca de la comprensión de instalador de Windows) está aprendiendo WiX (El WiX Tutorial no es tan malo, aunque es un poco fuera de fecha y dirigido a WiX 2.0 en lugar de 3.0) y unirse a la wix-users mailing list. No se una a la lista de usuarios hasta que haya terminado el libro mencionado anteriormente, estará bien por encima de su cabeza. Las preguntas de aquellos que no entienden los conceptos de Windows Installer son en gran parte ignoradas, sin embargo, las preguntas de las personas que han hecho sus tareas lo encontrarán como un gran recurso.

Lo que no está cubierto en el libro es Vista, las entradas del blog Robert Flamings en Understanding UAC and Vista (escritas cuando Vista estaba en su etapa beta) son la mejor información que encontrará sobre el tema.

Una cosa que tanto el Windows Installer como los equipos de WiX son realmente buenos es mantener la documentación (archivos de Ayuda) actualizada. Siempre que estoy trabajando en configuraciones voy general tienen Wix.chm y Msi45.chm abierta en un monitor;)

Junto con la documentación, los blogs de personas de los equipos de WiX y Windows Installer son grandes para aprender nuevos trucos, etc. Demasiados como para enumerarlos aquí, pero una vez que conozca la terminología, encontrará la mayoría de ellos apareciendo en los resultados de google.

Si todo esto parece demasiado, entonces echa un vistazo a NSIS. Excelente para instalaciones simples tipo "solo necesito copiar archivos", no tan buenas para implementaciones empresariales. Si estás dividido entre los dos, tal vez eche un vistazo al viejo blog de Rob Mensching when setup isn't just xcopy. Es probable que haya artículos que me convencieron de que sumergirse y aprender los conceptos subyacentes de Windows Installer darían sus frutos a largo plazo.Y tiene :)

+0

Si esto es demasiado recomendaría InnoSetup en su lugar (también gratis); tiene un conjunto de características similar con un lenguaje menos peculiar. –

+0

Desafortunadamente, necesitará tomar la ruta de Windows Installer si está escribiendo software comercial: la mayoría de los clientes corporativos ni siquiera considerarán comprar a menos que les pueda proporcionar una MSI para la implementación. – saschabeaumont

Cuestiones relacionadas