Pregunta

He estado evaluando la amplia gama de soluciones de instalación e implementación web disponibles para aplicaciones de Windows.Simplemente aclararé aquí (sin demasiados detalles, estas herramientas se han cubierto en otras preguntas) mi comprensión de las opciones:

  • NSIS - Herramienta gratuita que genera ejecutables de configuración.Pequeño binario.Lenguaje de scripting especializado, a veces obtuso.
  • Configuración innovadora - Herramientas gratuitas para ejecutables de configuración.Varios esquemas de compresión binaria.Motor de secuencias de comandos Pascal.
  • WIX - Conjunto de herramientas gratuito para generar binarios MSI.Lenguaje de definiciones XML.
  • Clic a través de WIX - Herramientas adicionales para empaquetado, descarga web y detección de actualizaciones automáticas (ahora parte del núcleo de WIX).
  • Instalar escudo - Entorno de desarrollo comercial para embalajes de instalación.Genera binarios MSI.Lenguaje InstallScript tipo C.
  • Inteligente - Entorno de desarrollo comercial para embalajes de instalación.Genera binarios MSI.
  • Haga clic una vez - Marco compatible con Visual Studio para publicar aplicaciones en un servidor web, con detección automática de actualizaciones.No hay soporte para requisitos de instalación personalizados (archivos INI, registro, etc.).Configuración de paquetes como binario MSI.
  • Instalar consciente - Entorno de desarrollo comercial para instalación.Genera binarios MSI.Marco de actualización automática (actualización web).

Si me he perdido alguno, háganmelo saber.

Y encontré algunas discusiones útiles sobre estas tecnologías en StackOverflow:

He trabajado con algunas de estas soluciones, así como con algunas soluciones de instalación interna patentadas.Se ocupan principalmente de empaquetar instalaciones y proporcionar un marco para que los desarrolladores accedan al entorno de ejecución.Con la creciente necesidad de implementación web y actualizaciones automáticas de software, esperaba encontrar más consenso entre los desarrolladores sobre un marco para la entrega web de software y actualizaciones posteriores, pero realmente no he encontrado ese consenso.Ciertamente hay soluciones disponibles (ClickOnce, ClickThrough, InstallShield Update Service), pero cada una tiene limitaciones considerables (corríjame si tergiversa alguna de ellas).Me interesaría un marco que proporcionara algo de lo siguiente:

  • Alojamiento/gestión de actualizaciones por parte de terceros.
  • Acceso al entorno del cliente (archivos INI, registro, etc.).
  • Registro/activación de usuarios.
  • Comentarios/informes de errores

Esto me deja con la fuerte impresión de que la mejor manera de abordar el problema de implementación web es a través de una solución propietaria personalizada (posiblemente aprovechando el paquete de instalación existente).He visto que este tipo de solución funciona bien para varias aplicaciones exitosas:

  • FileZilla: solicitud HTTP a update.filezilla-project.org para buscar actualizaciones, descarga un binario NSIS (creo) y luego se apaga para ejecutar la instalación.
  • Las actualizaciones automáticas para los juegos multijugador masivo son totalmente necesarias y se implementan universalmente mediante sistemas propietarios.

Entonces, por fin, a mis preguntas:

  • ¿Me he perdido un marco de implementación web que proporcione la funcionalidad que necesito?
  • ¿Son mis requisitos demasiado específicos para esperar razonablemente que un marco de terceros los cumpla?
  • ¿Debería comprar o construir?
¿Fue útil?

Solución

  • Si sus requisitos específicos son fundamentales para su negocio; es decir, parte de su negocio es proporcionar un despliegue / instalación sin problemas y fácil de usar y se siente que ninguna de las bibliotecas de despliegue disponibles puede dejar a lograr esto, entonces, ciertamente, seguir adelante y construir su propia cuenta.
  • Si sus requisitos específicos sería bueno tener, pero no hacer una parte significativa de su negocio; es decir, el usuario final no suele estar esperando o que necesitan un procedimiento de instalación sin problemas, o nunca tendrá que hacer que ellos mismos (es decir, que pasan a ese paso en su departamento de TI), entonces la necesidad de construir su propia sólo para sus propios requisitos específicos es probabilidades de ser compensado por el esfuerzo extra que implicaría.

Creo que su impresión de que usted va a necesitar una solución personalizada es un sonido de uno; parece que sus necesidades van a ser clave para la experiencia de su producto, especialmente si necesita actualizaciones automáticas muy suaves y retroalimentación.

Otros consejos

Quisiera instar precaución en InstallAware. Recientemente tuvimos una experiencia impactante con su atención al cliente.

Hemos seguido uno de sus proyectos de ejemplo a la carta que fracasó estrepitosamente. Planteado un ticket de soporte con el soporte al cliente y nos dijeron que nos iba a costar $ 199 para que se fijen en la fijación de su propio código.

A continuación, planteamos la misma cuestión en los foros de usuarios y se les prohibió de inmediato porque esto constituye envío cruzado y no estaba permitido. A pesar de que esto no se menciona en sus términos y condiciones. De hecho, se prohibió nuestra IP para que nadie en nuestra empresa puede publicar en los foros.

Una muy mala experiencia y uno que no lo repetiré. Ahora estamos buscando para reemplazar InstallAware tan pronto como sea posible.

Compra InstallAware a su propio riesgo.

Totalmente de acuerdo con el cartel que dice que se mantenga alejado de InstallAware. Han tenido una larga historia de problemas de ética realmente absurdo, y que tratan a sus propios clientes horrible. Pueden ser francamente abusiva e insultante.

Cuidado InstallAware!

Estoy totalmente de acuerdo sobre InstallAware.

Después de usar WiX, INE y InstallAware, tengo que admitir humildemente que todos eran excesivos para lo que realmente necesito como desarrollador de software. No hay proyectos que he hecho hasta ahora que no pudo ser desplegado mediante el proyecto de implementación de Visual Studio.

¿Se limita? Si.

También es muy fácil de aprender un uso. Por otra parte, en realidad puede hacer cosas realmente buenos como crear automáticamente parches (archivos .msp) mediante el uso de técnicas como se describe aquí

Entiendo perfectamente que no se puede hacer todo en el interior de un proyecto de instalación de Visual Studio, pero es bastante sorprendente lo que puede lograr. Es gratis, es fácil y, francamente, para uso general es una opción mejor que pasar horas y horas de aprendizaje alucinante XML de WiX (impresionante como lo es), o guiones detallados de InstallAware ...

Con la instalación de VS, es arrastrar y soltar y build'n'deploy. Cada otra solución que he intentado habían retrocesos ... no pueden detectar automáticamente el resultado del proyecto ... o la necesidad de filtros especiales a fin de no incluir salidas no deseadas de la construcción.

Mi sugerencia es la siguiente: Si simplemente desea obtener su proyecto desplegado, y luego aprender:

  1. ¿Cómo construir una clase de instalador personalizado, y
  2. ¿Cómo al autor sus propios paquetes de requisitos previos

Estas son las dos habilidades razonablemente fácil de dominar, y satisfacer las necesidades de la mayoría de los desarrolladores.

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