Cómo crear el instalador de Windows

Básicamente, estamos lanzando nuestros cambios / correcciones en forma de instalador manual (script de Windows powershell). Instalará los archivos de script .dll y SQL especificados en ubicaciones específicas al leer los valores de archivo de configuración (Configuraremos las ubicaciones de script .dll y Sql en este archivo). El mismo script de powershell tiene un código de desinstalación para deshacer un conjunto de chage particular.

¿Existe alguna opción o mecanismo para crear el instalador de Windows para el requisito anterior?

Versión corta : Ya hay muchas respuestas; básicamente solo agregaré algunos enlaces a las respuestas existentes. Aquí hay una respuesta corta anterior sobre el tema .

Mayor “visibilidad” : la respuesta anterior presenta un formato más simple con una vista de lista de las herramientas de implementación actuales más importantes. ¿Escapado? Pruebe estos, elija uno. A continuación hay más detalles y más “discusión”.


Herramientas de implementación

Hay muchas herramientas disponibles para crear archivos de instaladores / setup.exe de varios tipos. Aquí hay algunos enlaces a descripciones breves de la mayoría de ellos:

Yo recomendaría ir a MSI. Qué herramienta específica usar es menos obvia . Consulte la última sección a continuación para ver algunos enlaces con descripciones de fortalezas y debilidades de diferentes herramientas.


¿Por qué elegir MSI?

MSI (Windows Installer) es el estándar para la implementación corporativa, ya que ofrece una serie de beneficios corporativos de gran importancia en comparación con las tecnologías de instalación anteriores. Los beneficios se centran en la administración y estandarización remota confiable : preocupaciones cruciales de implementación corporativa.

En resumen, los beneficios específicos más importantes son probablemente:

  1. Funcionamiento silencioso y confiable (GUI estandarizada y completamente supresible)
  2. Desinstalación implícitamente disponible (una pesadilla cuando se trata de configuraciones heredadas)
  3. Transparencia (la naturaleza semitransparente e inspeccionable del instalador, excepto las CA comstackdas)
  4. Derechos de instalación elevados (sin derechos de administrador temporales desordenados)
  5. Línea de comando estandarizada (sin buscar interruptores “secretos”)
  6. Instalación administrativa (extracción del archivo: esencial para el reempaquetado corporativo)
  7. Registro detallado (útil y prolijo de hecho :-))
  8. Personalización estandarizada de paquetes (transformaciones – fragmentos de bases de datos)
  9. Soporte de reversión (puede deshacer cambios para instalaciones fallidas)
  10. Inventario (gestión e informes: registro completo de lo que está instalado y dónde)

En conjunto, esto proporciona el beneficio general de MSI: administración confiable y remota de la implementación para los ocupados administradores de sistemas en grandes entornos corporativos . Beneficios cruciales, a pesar de la complejidad y rareza de la tecnología.

Muchos encuentran la tecnología desafiante de manejar: hay algunas trampas comunes (y escribí una descripción muy extraña, ad-hoc de algunos anti-patrones de MSI hacia el fondo aquí – fuera de contexto para la pregunta, pero ahí está – a veces las cosas se escriben de forma espontánea para sorpresa de quien escribe también: genial, no lo es, solo detalles pragmáticos. Lo mismo aplica para el primer enlace).

La respuesta predeterminada del servidor vinculado (arriba y aquí) presenta una descripción mucho más elaborada de estos beneficios corporativos de MSI junto con algunos desafíos a tener en cuenta.

La misma pregunta de servidor tiene una segunda respuesta que describe errores de diseño comunes en archivos MSI . Un “vertedero de cerebros” realmente desordenado.


MSIX / AppX

Debo señalar que la nueva plataforma de empaquetado de Microsoft ahora es MSIX basada en el marco de aplicación AppX. Sin embargo, MSI tiene una gran penetración en el mundo de la implementación corporativa, por lo que queda por ver cuánto tiempo será relevante MSI. Todas las herramientas de implementación establecidas funcionan para admitir MSIX y AppX y otras tecnologías de implementación (también virtualización).


AppV

Y en el mundo real, corporativo AppV (virtualización de aplicaciones / transmisión de aplicaciones) se ha convertido en una solución de implementación común (blog de Tim Mangan).


Elegir una herramienta MSI

Los líderes de la industria para la creación de MSI generalmente son Advanced Installer , Installshield , PACE Suite y la solución de código abierto WiX (con su twig comercial Firegiant ), con la que pareces familiarizado.

Le daré algunos enlaces a respuestas previamente escritas con algunas opiniones y hechos en una mezcla indiscreta sobre estas diferentes herramientas. Se pretende como un “mejor esfuerzo” para ayudar a las personas a decidir qué herramienta necesitan, sin pretender ser “correctas”. “. Este es siempre un esfuerzo peligroso: años de experiencia significan conocimiento adquirido, pero también son un presagio de malos hábitos adquiridos y caprichos. Los resultados son opiniones honestas de un profesional defectuoso que solo puede ofrecer la voluntad de ayudar:

  • ¿Qué producto de instalación usar? InstallShield, WiX, Wise, Advanced Installer, etc. – un bash subjetivo de una evaluación objetiva de las fortalezas y debilidades de los productos de implementación establecidos actualmente.
  • Inicio rápido para WiX : una pequeña y desordenada respuesta con sugerencias sobre cómo comenzar a trabajar con WiX que ha subido más de lo habitual. Debe haber sido útil. Me gusta la muestra de estilo ” hello world ” a la que me vinculo en codeproject que otros han mencionado también.
  • Windows Installer y la creación de WiX (resumen rápido y no oficial de cómo se produjo WiX y cómo funciona. También una parte sobre “la complejidad inevitable de la implementación”).
  • ¿Cómo puedo comparar el contenido de dos (o más) archivos MSI? (alguna breve información sobre el formato MSI, cómo inspeccionar los archivos MSI y recuperar e inspeccionar el contenido en ellos utilizando herramientas gratuitas).
  • ¿Cómo evito fallas de diseño comunes en mi solución de implementación de WiX / MSI? (algunos consejos bien intencionados pero desordenados sobre cómo evitar problemas en su solución de implementación basada en MSI).

https://www.codeproject.com/Tips/105638/A-quick-introduction-Create-an-MSI-installer-with

Pruebe esto, esto hace uso del proyecto wix también lo usamos en nuestra empresa. Recuerde que necesitará el plugin wix para comstackr el proyecto. Es gratis y fácil de usar. Puedo ayudarte si tienes algún problema en la configuración.

Pago y envío https://marketplace.visualstudio.com/items?itemName=VisualStudioProductTeam.MicrosoftVisualStudio2017InstallerProjects

Se basa en WIX, pero es más fácil y más rápido, especialmente para proyectos más pequeños.

También hay herramientas de pago como Advanced Installer (de Caphyon) e InstallShield (de Flexera) que puede usar para crear un paquete de MSI. Su principal ventaja es que es bastante fácil crear un proyecto de instalador (configurable a través de diseñadores de UI), pero la mayoría de sus características son de pago.

Prefiero Inno Setup porque es gratis, robusto y tiene las características que necesitamos.

http://www.jrsoftware.org/isinfo.php