Utilisation InstallWIz.Net afin de déployer une application .NET
Date de publication : 26/09/2005 ,
Date de mise a jour : 28/07/2007
Par
Audrey Luccin (Espace de smyley)
Ce tutoriel décrit comment créer une installation standard pour le Microsoft .Net Framework avec InstallWIz.Net.
Pour les futurs version d'InstallWIz.Net, voir le projet DreamShield
I. Présentation
II. Installation
III. Création d'un projet d'installation
A. Etape 1 - Ouvrir l'assistant
B. Etape 2 - Saisir les valeurs
C. Etape 3 - Ajout des fichiers
1. Création de composants
2. Ajout de fichiers dans un composant
D. Etape 4 - Création de raccourcis
IV. Création et utilisation d'un module partagé
A. Présentation
B. Création d'un module partagé
C. Utilisation d'un module partagé
V. Désinstallation spéciale
VI. Explication des scripts
A. Chargeur d'installation
B. L'interface d'installation
VII. Messages du compilateur
VIII. Rapport de bugs
IX. Suivit des évolutions d'InstallWIz.Net
X. Conclusion
XI. Remerciements
I. Présentation
Dans ce tutoriel je vais vous indiquer comment utiliser InstallWIz.Net afin de créer des installations
pour une application Microsoft .Net et des modules partagés (écrit en C#). InstallWIz.Net contient un assistant
que nous utiliserons afin de nous simplifier la tâche.
II. Installation
Tout d'abord, avant d'installer InstallWIz.Net, il vous faut avoir installé sur votre machine le Microsoft .Net Framework 1.1.
Vous devez ensuite télécharger la dernière installation en date disponible ici
et suivre les étapes de l'assistant en choisissant de préférence l'installation complète.
 |
Pour avoir la liste complète des éléments requis par instalWIz, consultez cette page
|
III. Création d'un projet d'installation
A. Etape 1 - Ouvrir l'assistant
Après avoir installé InstallWIz.Net, vous avez à votre disposition des raccourcis situés sur le bureau et dans le dossier InstallWIz du menu démarrer.
Exécutez InstallWIz puis ouvrez un nouveau projet d'installation standard via le menu Fichier->Nouveau
 Boite de dialogue : sélection du type de projet
Sélectionnez ensuite le type de projet Projet d'installation standard .Net puis cliquez sur Nouveau fichier. Vous verrez apparaître la boîte de dialogue
de sélection du mode de projet.
Sélectionnez le mode Projet d'installation InstallWIz.Net standard et cochez la case à cocher se situant en bas à gauche : Utiliser l'assistant de projet.
Pour terminer cliquez sur Ok.
 Mode de projet
 |
Seuls les types de projets d'installation standard et de module partagé sont disponibles. Les autres types de projets, ici grisés pour le moment, seront disponibles dans les prochaines versions d'InstallWIz.Net
|
B. Etape 2 - Saisir les valeurs
Maintenant que nous sommes dans l'assistant de projet, nous pouvons donc modifier n'importe quelle valeur puis aller à l'étape suivante en cliquant sur Suivant.
Dans la page Propriétés générales, la propriété Nom du projet correspond au titre que vous donnez à votre projet mais pas à l'installation. Le nom affiché
de l'installation correspond à la propriété Titre
La page suivante nous permet de spécifier le Guid (ou Id) de l'installation. Il est préférable de laisser les valeurs par défaut ou de cliquer sur Générer pour en construire un nouveau.
 |
Les Guid sont utilisés par InstallWIz pour identifier de manière unique chaque installation. Si une installation portant le même Guid est déjà installé sur la machine cible, par défaut InstallWiz proposera de la désinstaller.
Les futures fonctionnalités permettront aussi de la mettre à jour.
|
Dans la page suivante l'assistant nous demande le nom du composant principal d'installation. Nous laisserons la valeur par défaut et passerons à la page "Fichiers à installer".
Dans cette page nous devrions normalement spécifier le dossier dans lequel se situent les fichiers de notre installation. Vous pouvez spécifier un dossier mais dans notre exemple nous laisserons ce champ vide.
 |
Laisser ce champ vide incitera l'assistant à nous demander si nous voulons vraiment créer une installation "vide" de fichiers. Répondez oui car nous la "remplirons" manuellement.
|
Nous avons désormais une installation fonctionnelle mais nous devons l'enregistrer avant de poursuivre.
Après avoir enregistré notre projet, nous pouvons le compiler en cliquant sur le menu correspondant situé juste au dessus du menu Enregistrer.
Pour voir le résultat de notre projet, il suffit de cliquer sur le menu Lancer, situé juste en dessous du menu Compiler, ou d'atteindre avec l'explorateur Windows le dossier
dans lequel nous avons enregistré le projet, puis en cliquant dans le sous-dossier "Output" sur l'application "Setup.exe" ou "UsrSetup.exe"
 |
Les applications "Setup" et "UsrSetup" exécutent toutes les deux la même installation. En réalité l'application "Setup" lance "UsrSetup" après avoir vérifié que le Microsoft.Net Framework a bien été installé.
|
C. Etape 3 - Ajout des fichiers
Ajoutons maintenant des fichiers à notre installation.
1. Création de composants
Chaque installation InstallWIz.Net est organisée en composant. Ces composants contiennent les fichiers, les raccourcis, les clefs de la base de registre, etc.
Il faut dans un premier temps créer un composant d'installation.
Pour cela, déplacez-vous dans l'onglet "Composants" de l'éditeur de projets :
Comme vous pouvez le remarquer, l'assistant a déjà créé un composant nommé MyInstallationComponent et a également ajouté un composant nommé System.
 |
Le composant System est particulier car il n'est pas installé. N'ajoutez donc pas d'éléments (fichiers, raccourcis, ...) à ce composant, cependant
si vous souhaitez ajouter un fichier lisez-moi et/ou un fichier de licence, vous devrez ajouter un fichier readme.txt et/ou licence.txt au
composant System.
Note: Cette spécificité du composant System n'existe pas dans un projet de modules partagés.
|
Dans notre installation, nous prévoyons de créer des raccourcis. Nous allons donc créer un composant permettant la création de raccourcis. Pour ce faire, vous devrez cliquer
avec le bouton droit de la sourie sur la liste et sélectionner le menu Ajouter un composant.
Nous appellerons ce composant "Raccourcis" et laisserons les autres propriétés avec leur valeur par défaut. Cela aura pour conséquence
d'installer les raccourcis si l'utilisateur procède à une installation standard (mode d'installation sélectionné par défaut), de ne pas les installer dans un mode d'installation minimale et de les installer dans une installation complète de l'application.
Le champ "Composant compressé" permet de spécifier si les fichiers ajoutés au composant sont ou non compressés (compression ZIP).
2. Ajout de fichiers dans un composant
Nous allons maintenant choisir les fichiers à ajouter à notre installation.
Déplacez-vous vers l'onglet Fichiers et sélectionnez dans l'arbre de valeur à gauche le composant MyInstallationComponent
Dans notre exemple, nous installerons le bloc-notes.
Pour l'ajouter, faites un clic droit sur la liste (après avoir sélectionné le composant MyInstallationComponent)
et choisissez Ajouter un fichier. Dans la boîte de dialogue qui apparaît, parcourez les répertoires de votre machine pour sélectionner le fichier C:\Windows\Notepad.exe ou C:\Windows\System32\Notepad.exe et
validez.
La boîte de dialogue suivante nous demande où sera installé ce fichier sur le poste de destination, le répertoire proposé par défaut est {SETUPDIR}\Bin, validez ce choix.
 |
Il est possible d'utiliser des variables prédéfinies qui sont :
{SETUPDIR} - représente le dossier d'installation choisit dans l'assistant par l'utilisateur.
{UNINSTALLER} - désinstalleur crée par l'installation
{_DESKTOP} - bureau de l'ordinateur de destination
{_PROGRAMS} - menu démarrer de l'ordinateur de destination
Pour consultez la liste complète de ces variables, parcourez dans l'aide menu Aide le dossier Mise en route->Informations complémentaires->Variables internes"
|
D. Etape 4 - Création de raccourcis
Créons maintenant un raccourci, pointant vers le bloc-notes, que l'on copiera sur le bureau. Pour cela, déplacez-vous vers l'onglet Raccourcis fichiers
et sélectionnez le composant Raccourcis dans l'arbre de valeur situé dans la partie gauche.
Nous devons d'abord créer le dossier dans lequel sera le raccourci. Faites un clic droit sur l'icône du composant Raccourcis
et choisissez le menu créer un dossier. Remplacez la valeur {SETUPDIR} par {_DESKTOP}. Grâce à cela nous pourrons installer un raccourci sur le bureau. Validez votre choix.
Cliquez sur l'icône du dossier {_DESKTOP} et faites dessus un clic droit. Choisissez cette fois-ci le menu Ajouter un lien.

Dans le premier champ, saisissez la valeur bloc-notes qui est le nom de notre raccourci.
Dans la zone de saisie Fichier vers lequel créer le raccourci, mettez comme valeur {SETUPDIR}\Bin\Notepad.exe (Dossier d'installation de notre fichier plus son nom)
Le champ suivant indique quelle image utiliser pour le raccourci. Saisissez la même valeur ({SETUPDIR}\Bin\Notepad.exe) puis validez la boîte de dialogue.
Nous pouvons donc maintenant voir le résultat de notre projet. Dans le menu de gauche cliquez sur compiler puis sur lancer. Effectuez l'installation et vérifiez sur le bureau :
un raccourcis nommé "bloc-notes" nous permet d'ouvrir le fichier "notepad.exe" situé dans le répertoire "C:\Program Files\Nom de l'installation\Bin".
 |
Vous pouvez aussi créer un raccourcis pour désinstaller votre application (bien qu'elle soit enregistrée dans la liste "Ajout/Suppression de programmes" du panneau de configuration).
Pour cela il vous suffit de créer de la même manière un raccourcis mais au lieu de spécifier "{SETUPDIR}\Bin\Notepad.exe" comme Fichier vers lequel créer un raccourcis et
Image à utiliser pour le raccourcis, vous devez utiliser la variable "{UNINSTALLER}".
|
IV. Création et utilisation d'un module partagé
A. Présentation
Les modules partagés d'InstallWIz.Net permettent de rendre commun à plusieurs installations une série d'actions identiques comme la copie de fichiers ou
la création de raccourcis. Ils peuvent être utilisés de 3 manières (chaque mode porte un nom qui peut être édité dans le projet de module partagé) :
| Nom |
Action |
| vmStandalone |
Le module est directement fusionné à l'installation et est installé comme un composant normal. Aucun enregistrement du module n'est effectué |
| vmInternal |
Le module ne peut être installé qu'une seule fois par installation mais n'a aucune influence sur les autres installations de la machine cible l'utilisant |
| vmSystem |
Le module ne peut être installé qu'une seule fois par machine.
Les installations suivantes le référenceront s'il est déjà installé.
Il sera désinstallé par la dernière installation InstallWIz le référençant (principe du compteur de références). |
B. Création d'un module partagé
La marche à suivre pour créer un module partagé est très proche de celle visant à créer une installation normal.
Pour en créer un, choisissez comme type de projet Projet d'installation standard .Net et cochez la case Utiliser l'assistant de projet mais dans le mode de projet à la différence d'une
installation normale, choisissez Projet de module partagé InstallWIz.Net et suivez les étapes proposées par l'assistant.
Vous pouvez ensuite spécifier les mêmes éléments (fichiers, ...) que pour une installation
normale. Le module partagé, une fois que vous aurez compilé l'installation se trouvera dans "{Dossier de votre projet}\Output\Deploy\VotreModule.imm".
C'est ce fichier que vous devez utiliser pour référencer votre module partagé dans une autre installation InstallWIz.Net.
C. Utilisation d'un module partagé
Pour utiliser un module partagé dans une installation, déplacez-vous vers l'onglet Modules partagés. Sélectionnez le composant dans lequel vous voulez ajouter votre module
puis dans la liste de droite faites un clic droit et choisissez le menu Ajouter un module partagé. Vous pouvez ensuite parcourir votre disque dur pour sélectionner le module (*.imm) voulu.
 |
Le module partagé n'est installé que si son composant parent est installé. Si vous voulez être certain que votre module sera toujours installé, créez un composant et cochez dans ses
propriétés l'option Composant obligatoirement installé. Ajoutez ensuite vos modules partagés dans ce composant.
|
V. Désinstallation spéciale
Par défaut, quand vous lancez l'installation d'une application déjà installées, la désinstallation de celle-ci s'exécute, cependant il est possible de modifier
la liste des composants installés ou encore de réinstaller ses composants.
Pour cela déplacez-vous vers la page Autres paramètres, faites un clic droit sur la valeur OnAppExistsInReg puis dans le menu cliquez sur Modifier un élément
 |
Si la valeur OnAppExistsInReg n'existe pas, vous pouvez de la même manière la créer en cliquant sur Ajouter un élément
|
Dans la boîte de dialogue qui apparaît modifiez la valeur DELETE en MODIFY, validez et compilez l'installation.
Maintenant le raccourci de désinstallation d'une application ainsi que le fait de lancer l'installation d'une application déjà installée mènera vers cette boite de dialogue :
 Boite de dialogue de modification d'installation
VI. Explication des scripts
InstallWIz.Net est basé sur une large utilisation de scripts codés en C# afin de créer l'installeur. Ils se divisent en deux parties :
A. Chargeur d'installation
Le chargeur d'installation a pour fonction d'initialiser le moteur d'exécution InstallWIz.Net et de lancer la séquence principale. Son code se trouve dans le dossier Lib du répertoire d'installation d'InstallWIz.Net.
La liste des fichiers C# de son code source est accessible dans l'onglet Fichiers sources C# et ses ressources (fichiers *.ressources) sont dans l'onglet Fichiers ressources.
 |
Il est préférable de ne jamais modifier le code du chargeur d'installation.
|
B. L'interface d'installation
L'interface de l'installeur est constituée des fichiers présents dans l'onglet Séquences d'installation.
Chaque fichier constitue en général une des pages de l'assistant d'installation. Vous pouvez modifier le code de ses pages ou en ajouter d'autres.
Le script contenant l'ordre d'affichage des pages se trouve dans l'élément Package\Actions\Wizard\SetupGuiManager\StandardInstallerGui.
 |
Le "cur" d'InstallWIz est formé par l'ensemble des dlls InstallWIz.dll, WizDB.dll,lzip.dll ainsi que stdaddins.dll. Pensez donc à toujours référencer ces dlls si vous modifiez un script car sinon une erreur d'exécution sera levée.
|
VII. Messages du compilateur
Lors de la compilation du projet d'installation, des erreurs peuvent survenir. Pour vérifier l'existence d'erreurs après la compilation d'un projet,
c'est à dire lorsque la boite de dialogue affichant la progression de la compilation disparaît, vérifiez la liste des messages de l'onglet Sortie.
- Si une croix rouge apparaît à côté d'un message, une erreur est survenue. Il se peut que ce soit une erreur provoquée par un fichier inexistant, ou une erreur dans votre script C#
- Si une erreur de script à lieu dans un fichier situé sur le disque dur, l'erreur est dans ce cas relative au script par défaut (onglet Fichiers sources C#). Cependant si l'erreur est relative à un fichier situé dans Package\*, il s'agit d'une erreur du script de séquence (onglet Séquences d'installation)
 |
Si une erreur survient dans le script des séquences, vous pouvez facilement les voir en vous déplaçant dans l'objet Séquences d'installation, et ensuite dans l'arbre
des valeurs (dans la partie gauche), sélectionner une erreur dans l'entrée Erreurs de compilation. Notez toutefois que cette entrée n'est pas visible si aucune erreur n'est survenue.
|
VIII. Rapport de bugs
InstallWIz.Net étant pour l'instant dans une version bêta, des erreurs peuvent persister. Si vous veniez à en détecter ou déclencher une, vous pouvez utiliser l'outil de transmission de bug.
Vous pouvez y accéder de 4 manières :
- En utilisant le menu Outil de transmission de bug situé dans la barre d'outils de l'IDE
- En utilisant le menu Outil de transmission de bug situé dans le sous menu "Outils" de l'IDE
- En lançant le programme BugPoster.exe situé dans le dossier d'installation d'InstallWIz.Net
- En cliquant sur Envoyer le rapport d'erreur dans la fenêtre signalant une erreur du programme
Les rapports me seront transmis à l'adresse audrey.luxin at wanadoo.fr.
Ce rapport de bug ne contient que des informations techniques liées à l'erreur (si elles sont disponibles): la version des fichiers d'InstallWIz, la version de votre système d'exploitation et la date courante.
IX. Suivit des évolutions d'InstallWIz.Net
Afin de suivre toutes les informations relatives aux évolutions d'InstallWIz.Net, vous avez la possibilité de consulter le blog d'InstallWIz.Net dans
lequel j'annoncerai toutes les nouveautés et mises à jour.
X. Conclusion
Grâce à InstallWIz.Net vous pourrez grâce à un assistant créer très rapidement des installations simple ou aller plus loin en réécrivant l'installeur par le biais du code C#.
Voici les évolutions prévues pour InstallWIz:
- support des mises à jour via la vérification des fichiers installés
- accès directe aux API pour les développeurs .Net (quelque soit le langage utilisé) et ce afin de proposer une plateforme leur donnant la possibilité de gérer une configuration ou une machine en s'assurant que chaque action soit valide et que les fichiers concernés n'aient pas étés modifiés.
- un éditeur de projet permettant de créer des installations pour Microsoft® Windows Installer en vue d'utiliser toute la puissance de cette plateforme.
XI. Remerciements
|