2009-02-20 6 views
11

Je suis sur le point de démarrer un nouveau projet InstallShield. Il y a trois choix pour le type de projet:Choix d'un type de projet InstallShield

  1. Basic MSI
  2. InstallScript
  3. InstallScript MSI

Quels sont les avantages et les inconvénients de chacun? Lequel devrais-je choisir?

+0

Veuillez lire mes commentaires ci-dessous. ** Évitez à tout prix le type de projet InstallationScript MSI **. –

Répondre

18

Basic MSI:

Ceci est le type d'installation standard. Il utilise Windows Installer pour la quasi-totalité de l'installation (les prérequis, la sélection de la langue et d'autres éléments sont pris en charge par setup.exe). Un MSI est une base de données avec de nombreux tableaux décrivant le fonctionnement de l'installation. Le nombre de tables peut être un peu écrasant au début, mais InstallShield fait un bon travail de l'abstraction; la plupart du temps, vous n'avez pas besoin de modifier directement les tables de la base de données.

Ceci est le type d'installation le plus courant, il y a donc beaucoup d'informations disponibles à ce sujet. Le InstallShield forum est une excellente source d'information. De plus, de nombreuses installations utilisent des MSI, donc si vous les comprenez, il sera plus facile de comprendre ce que font les autres installations (par exemple si vous devez installer le MSI d'un autre fabricant dans le cadre de votre installation). Les installations silencieuses peuvent être réalisées facilement avec un argument de ligne de commande.

Malheureusement, étant donné que le MSI contrôle l'installation via des tables de base de données, il y a un peu de courbe d'apprentissage. Si vous finissez par devoir éditer directement les tables MSI, cela peut être déroutant au début car il y a beaucoup de tables et certaines de leurs fins et interactions sont subtiles. En outre, la création et le séquençage des dialogues sont plus difficiles dans un MSI puisque toutes les interactions doivent être contrôlées par des tables. Des boîtes de dialogue MSI personnalisées peuvent être créées, mais uniquement en C++.

Je recommande ce type de projet pour la plupart des utilisations.

InstallScript:

Ces projets utilisent un script d'installation pour installer le logiciel au lieu de Windows Installer. Puisque le script d'installation est un programme linéaire, il peut être plus facile de comprendre comment cela fonctionne. Un avantage de ce type de projet est que les boîtes de dialogue de création et de séquencement sont plus faciles. En outre, les boîtes de dialogue InstallScript peuvent être habillées et sembler un peu mieux que les boîtes de dialogue MSI. L'exécution d'une installation silencieuse nécessite un "fichier de réponses" séparé pour contrôler l'interface utilisateur. Je ne recommanderais pas d'utiliser ce type de projet sauf si vous avez une raison spécifique (par exemple si vous devez contrôler très précisément le comportement de l'installation d'une manière non prise en charge par MSI).

InstallScript MSI:

Ceci est essentiellement un projet Basic MSI qui utilise InstallScript pour contrôler l'interface utilisateur et un MSI pour contrôler l'installation réelle. Il a l'avantage d'utiliser un MSI pour contrôler l'installation, mais travailler avec des boîtes de dialogue est plus facile. Il nécessite toujours un fichier de réponses pour contrôler l'interface utilisateur lors d'une installation silencieuse. Si vous ne vous souciez pas des installations silencieuses ou si vous avez une séquence de dialogue d'interface utilisateur compliquée, vous pouvez trouver ce type de projet utile.

+5

Prenez-le dans les tranchées: n'utilisez JAMAIS le logiciel MSI d'Openscript.Il est extrêmement bogué, il provoque toutes sortes de problèmes pour le déploiement d'entreprise, et en général, il va à l'encontre du but et des avantages de MSI en tant que technologie de déploiement. Je pourrais continuer encore et encore à ce sujet, mais je ne vais pas perdre votre temps. Prenez-moi au mot et épargnez-vous beaucoup d'ennuis. Les choix sont Basic MSI si vous voulez les capacités de déploiement de MSI ou InstallScript si vous avez besoin d'un script de déploiement de style hérité. MSI a une courbe d'apprentissage, mais améliore grandement le déploiement de l'entreprise. –

+0

@ kevin-kibler Je me rends compte que cela fait un bout de temps, mais cela pourrait-il être mis à jour pour couvrir le projet Advance UI? – x5657

+0

Désolé, je ne suis pas familier avec ça. Je n'ai pas utilisé InstallShield depuis plusieurs années. J'ai utilisé wix pour gérer mes besoins d'installation (très limités) dernièrement. –

Questions connexes