Logiciel gratuit pour les installateurs Windows: NSIS vs WiX?

J’ai besoin de choisir un logiciel pour installer le logiciel. NSIS et WiX semblent prometteurs. Lequel recommanderiez-vous par rapport à l’autre et pourquoi?

N’hésitez pas à proposer autre chose si vous pensez que c’est mieux que les deux.

Si vous souhaitez qu’un programme d’installation soit effectué aujourd’hui avec un minimum de surcharge, utilisez NSIS. Langage de script simple, bonne documentation, rapide.

Si vous souhaitez créer des fichiers MSI, intégrez-les au système transactionnel de Windows Installer et disposez de suffisamment de temps pour apprendre le modèle déclaratif utilisé par Windows Installer, puis consultez WiX.

Aussi, peut-être donner un coup de pouce à Inno Setup . Bien sûr, vous pourriez trouver cela un peu étrange car cela vous oblige à écrire du code personnalisé en Pascal, mais encore une fois, il n’y a pratiquement plus rien qui vous oblige à faire du code personnalisé – Inno Setup est vraiment très puissant.

Inno Setup génère également des programmes d’installation EXE – si vous souhaitez que votre application soit facilement déployable dans les environnements d’entreprise, vous devrez probablement suivre l’itinéraire WiX, même si personnellement, j’ai eu pas mal de problèmes liés à MSI Personnellement, je préférerais que MSI meure d’une mort lente et horrible (enfin – en fait, une mort rapide serait favorable à ce stade – mais horrible, ça peut très bien être), alors allez-y et faites le fichier EXE.

Alors.

  • NSIS : Vous devez apprendre une nouvelle langue. Crée des installeurs EXE.
  • WiX : création d’une installation déclarative, même si elle est un peu faible. Cela nécessite certainement des connaissances fondamentales en MSI que je trouve très difficile à obtenir en raison du manque général de didacticiels simples.
  • Configuration Inno : vous permet de créer des installeurs EXE assez puissants avec une syntaxe simple, en grande partie basée sur .INI-File, mais vous oblige à apprendre Pascal si vous avez besoin d’un codage personnalisé.

En tant que codeur Delphi de longue date, je choisirais toujours Inno Setup, bien que ce soit probablement très biaisé (je suis un fan d’Inno Setup depuis 1996).

Ceci est à peu près une copie de * Quel est le meilleur choix pour créer des installateurs Windows , alors je vous suggère de vérifier les nombreuses réponses là-bas (il y a aussi des discussions sur les alternatives commerciales).

La question que vous devez vous poser est la suivante: dois-je être compatible avec les scénarios de déploiement d’entreprise pour le déploiement de SMS / Active Directory ? Si la réponse est oui, alors apprenez les principes fondamentaux de MSI .

Si vous voulez expédier une application qui est vraiment amusante ou si vous n’avez pas besoin de la prendre en charge dans un environnement d’entreprise et que vous ne voulez pas passer trop de temps à vous mettre au diapason, apprenez NSIS.

NSIS vous donnera un exe, WiX vous donnera un MSI.

J’ai utilisé NSIS pour regrouper quelques installateurs MSI en un seul fichier et effectuer des vérifications supplémentaires que je ne pouvais pas faire en utilisant le projet d’installation VS.NET.

INNO Setup est un autre installateur que vous voudrez peut-être examiner. Il est plus proche de NSIS que de WiX, mais les installateurs qu’il fabrique ressemblent davantage à des installateurs standard que les installateurs NSIS.

Je n’ai pas utilisé WiX parce que je n’aimais pas le langage de définition XML utilisé pour créer l’installateur et je ne pouvais pas déterminer s’il supportait le regroupement d’autres MSI dépendantes

Sur les trois, j’ai aimé NSIS comme il avait la meilleure documentation.

J’utilise NSIS au travail (je l’ai apporté et converti nos anciens fichiers InstalShield), et je l’aime bien.

Je ne peux pas parler pour les autres options, mais NSIS peut être délicat pour un stream d’installation plus compliqué et le langage de script est un peu brut pour des types plus détaillés (plus comme un assembleur qu’un langage de haut niveau).

Personnellement, j’ai seulement essayé WiX. Il a une courbe d’apprentissage un peu raide (sauf si vous parvenez à trouver une interface utilisateur graphique agréable), mais vous devriez payer à la fin car il utilise le format Windows Installer (MSI) plutôt qu’un fichier EXE personnalisé (je crois) que NSIS fait. . L’approche déclarative de WiX / MSI est généralement privilégiée de nos jours et est considérée comme plus fiable. Cependant, si vous voulez simplement une solution simple et rapide, NSIS pourrait être l’option car il devrait contenir de nombreux exemples et une bonne base de support (bien que personnellement, je voudrais utiliser un package d’installation Visual Studio pour quelque chose comme ça). Ce billet semble bien discuter de la question.

J’ai utilisé NSIS. Je ne peux pas vraiment commenter les autres, mais je pense qu’il y a pas mal de commentaires qui aident à prendre une décision objective (si ce n’est déjà fait). Le logiciel HMNSIS est idéal pour créer un installateur simple pour une application simple. Il a un assistant intégré et est un bon petit IDE pour NSIS.

Je conviens également que c’est un logiciel libre assez bien documenté. Cependant, comme je l’ai dit, du fait que je n’ai pas eu besoin d’autre chose (parce que j’aime bien NSIS), je ne peux pas comparer.

Vous devriez jeter un oeil à InstallJammer . Non seulement il est gratuit, il est multi-plateforme et très facile à utiliser. La plupart des actions courantes ne nécessitent aucun script, mais avec un langage de script puissant sous le capot, vous pouvez effectuer une installation à peu près tout ce que vous voulez.

Si tout ce que vous voulez est un installateur de base pour installer votre application, vous pouvez le faire en quelques minutes à partir du premier démarrage. Si vous voulez quelque chose de plus puissant, les capacités et la documentation sont excellentes.