Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

INSTALLATION AVEC INNOSETUP


Information sur le tutorial

Catégorie :Divers Date de création : 02/01/2007 15:43:49 Vu : 29 705 fois

Note :
Aucune note

Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note


Description

Vu qu'à force de répéter à chaque fois les mêmes choses, on en devient aigris, j'ai enfin décidé de poster mes tutoriaux sur InnoSetup directement sur VBFrance (vu que la plupart ne font même pas de recherche avant de trouver mes posts à ce sujet sur le forum...).

Pour ceux qui veulent la version complète (avec les images) au format Word, ca se trouve ici :
http://dark-sidious.chez-alice.fr/cours/TUTORIAL_Inno_Setup.zip

Tutorial

 

 

 

 

 

 

 

TUTORIAL :Créer un setup d'un programme avec InnoSetup

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NIVEAU : INITIES

 

Pré requis pour comprendre cetutorial :

 

-          Connaîtreun peu le système de fichier de Windows

 

 

 

Auteur : Dark sidious

Date de création :10/05/2004

Version : 1.0

 

 


 

SOMMAIRE

 

 

 

 

I-                 Introduction

 

 

II-               Ce qu'il vous faut avant de commencer

 

 

III-            L'assistant de InnoSetup

 

 

IV-            Etape 1 : Généralité sur le programme

 

 

V-               Etape 2 : Dossier d'installation

 

 

VI-            Etape 3 : Exe et autres fichiers

 

 

VII-         Etape 4 : Raccourcis et menu démarrer

 

 

VIII-      Etape5 : Fichiers de licence

 

 

IX-            Etape 6 : Comprendre le script généré

 

 

X-               Conclusion

                                             

 

 


INTRODUCTION

 

 

 

 

 

 

 

Qui n'a jamais pesté des incompatibilités d'un setupcrée avec l'assistant empaquetage et déploiement de VB 6 ? Qui n'a jamaisrêvé de faire des setup au look professionnel pour concurrencer ceux deslogiciels commerciaux. Qui n'a jamais eu des problèmes de déploiements de leursprogrammes sur un autre ordinateur ? Je ne vous promets pas de pouvoirrésoudre tout ces problèmes, mais en tout cas, vous verrez qu'une installationcrée par le logiciel InnoSetup est bien plus puissante qu'une installation créepar l'assistant empaquetage et déploiement !

Ce tutorial est destiné à vous présenter InnoSetup,un logiciel gratuit qui permet de créer des setup de manière trèsprofessionnelle, qui peut enregistrer les librairies dans le registre, de créerdes raccourcis, de créer des dossiers, de créer des désinstallateurs, et toutcela très rapidement.

J'espère que la lecture de ce tutorial vous seraplaisante, et que cela vous donnera envie d'utiliser InnoSetup pour créer tousvos programmes d'installation.


Bonne lecture, et bonne compréhension.

 


CE QU'IL VOUS FAUT AVANTDE COMMENCER

 

 

 

Avant de vous lancer dans les exemples pratiques dece tutorial, il vous faut télécharger et installer le logicielnécessaire : InnoSetup.

 

InnoSetup est un logiciel gratuit qui est un éditeurde script iss (le format des scripts de InnoSetup) et un compilateur deprogramme d'installation. Vous pourrez le trouver sur le site del'auteur : http://www.jrsoftware.org/isinfo.php

Je vous conseille de télécharger la dernière versionpour être sûr que les derniers bugs rencontrés sont corrigés. Pour ce tutorial,la version 4.2.2 sera utilisée mais les versions supérieures devraient être compatiblesavec les scripts de la version 4.2.2.

 

Une fois téléchargé, il vous fautinstaller ce logiciel.

 

Pour pouvoir créer l'exemple de setup de ce tutorial,il faut que vous ayez un projet exécutable que vous allez installer avec leprogramme d'installation que nous allons créer avec InnoSetup.


 

L'ASSISTANT DE INNOSETUP

 

 

 

 

Nousallons maintenant voir comment fonctionne l'assistant d'InnoSetup. Lancez doncInnoSetup compiler, et sélectionnez dans la page de présentation « createa new script file using the script wizard » :

 

 

Celavous permet de lancer l'assistant de création de script d'InnoSetup, vouspourrez ainsi vite vous rendre compte de la puissance de personnalisation desinstallations crées par InnoSetup !

 

Validezla boîte de dialogue en appuyant sur le bouton OK.

 

L'assistantse lance alors, et vous guidera dans toutes les étapes de créationd'installateur en vous demandant des informations sur le logiciel à installer,et les prendra en compte pour créer le script final.

 

Validerla page de présentation de l'assistant en appuyant sur le bouton Next >


 

ETAPE1 : GENERALITE SUR LE PROGRAMME

 

 

L'assistantvous demande alors d'entrer le nom du programme à installer ainsi que le nom duprogramme avec la version :

 

 

Notezque seul les champs Application Name et Application name including version sontobligatoires. Vous pouvez supprimer les autres informations, ainsi ellesn'apparaîtront pas dans le setup final.

Application Name : il s'agit du nom del'application à installer

Application name includingversion : il s'agit du nom de l'application à installer avec son numéro deversion.

Application website : il s'agit d'un siteinternet qui propose de l'aide ou des mises à jour du logiciel installé.

Applicationpublisher : il s'agit de l'auteur ou de la compagnie qui a développé le logiciel àinstaller.

 

Définissezdonc tout ses paramètres de personnalisation, et cliquez sur le bouton Nextpour passer à l'étape suivante.


 

ETAPE 2 : DOSSIERD'INSTALLATION

 

 

 

Laprochaine étape consiste à définir le dossier d'installation de votreprogramme :

 

 

Vouspouvez installer votre programme dans le dossier Program Files de l'ordinateuren sélectionnant « Program File directory » dans le comboboxApplication destination base directory, ou vous pouvez spécifier un nom dedossier personnalisé en sélectionnant « Custom ».

Vousdevez également définir le nom par défaut du dossier qui sera créé pourcontenir votre programme après l'installation. Vous pouvez permettrel'utilisateur de modifier le nom du dossier par défaut en cochant le checkboxAllow user to change the application directory, ou vous pouvez spécifier quevotre programme ne nécessite aucun répertoire d'installation en cochant lecheckbox The application doesn't need a directory.

Laissezles paramètres par défaut d'InnoSetup car ils conviennent à notre exemple.

Validercette étape en cliquant sur le bouton Next >

 


ETAPE 3 : EXE ETAUTRES FICHIERS

 

 

 

Laprochaine étape consiste à sélectionner le programme exécutable de votreapplication. Il s'agit du programme lui-même en fait, ainsi que tout les autresfichiers indispensables pour le bon fonctionnement de votre application :

 

 

Poursélectionner votre fichier exécutable, cliquez sur le bouton Browse., etchercher votre programme dans la feuille d'ouverture de windows qui s'affiche(vous pouvez également taper directement le chemin de votre programme dans letextbox disponible).

 

Lecheckbox Allow user to start the application after setup has finished vouspermet d'afficher un checkbox à la fin de l'installation qui permet àl'utilisateur de lancer votre programme une fois installé.

 

Vouspouvez également grâce à cette boîte ajouter tout les fichiers nécessaire à labonne exécution de votre programme (dll, ocx, activeX, base de données, images,etc.).

Pourse faire, cliquez sur le bouton Add file(s). et sélectionnez le fichier àajouter. Vous pouvez également inclure le contenu de tout un dossier encliquant sur le bouton Add directory.

Sivous ajouter un fichier, vous pouvez spécifier l'emplacement dans lequell'installation doit le copier en le sélectionnant dans la liste des fichiersajoutés, et en cliquant sur le bouton Edit. :

 

 

Uneboite de dialogue s'ouvre alors ressemblant à celle de l'étape précédente, etvous pouvez définir dans quel dossier vous voulez copier le fichier lors del'installation.

 

Veuillezbien respecter les répertoires de vos fichiers tels qu'ils sont répertoriésdans vos programmes si vous ne voulez pas avoir d'erreurs qui apparaissent lorsde l'exécution de votre programme.

 

Unefois que vous avez inclus tous les fichiers nécessaires pour le bonfonctionnement de votre programme, et que vous avez définis les répertoires dedestinations des fichiers, cliquez sur le bouton Next > pour passer àl'étape suivante.


ETAPE4 : RACCOURCIS ET MENU DEMARRER

 

 

 

 

Cetteétape consiste à définir les raccourcis d'accès à votre programme, et permettreainsi à l'utilisateur de lancer rapidement votre programme.

 

 

 

Vouspouvez ainsi définit le nom du raccourci à afficher dans le menu démarrer.Celui-ci sera inclus dans le dossier portant le nom de votre programme.

 

Enplus de définir le nom du raccourci, vous pouvez permettre (ou non) àl'utilisateur de modifier le nom du dossier dans le menu démarrer en cochantl'option Allow user to change the start menu folder name. L'option allow userto disable start menu folder creation permet quand à elle à l'utilisateur dedésactiver la création d'un raccourci dans le menu démarrer.

L'optioncreate an internet shorcut in the start menu folder permet de placer unraccourci vers le site internet mentionné dans la première étape dans ledossier de votre programme dans le menu démarrer. L'utilisateur pourra ainsirapidement se rendre sur le site internet en cliquant sur ce raccourci.

L'optioncreate en uninstall icon in the start menu folder permet de placer un raccourcivers le programme de désinstallation de votre application dans le menudémarrer.

L'optionallow user to create a desktop icon permet à l'utilisateur de créer ou non unraccourci de votre application sur le bureau.

L'optionallow user to create a quick launch icon permet à l'utilisateur de créer ou nonun raccourci de votre application dans la barre de lancement rapide de Windows.

 

Unefois que vous avez définis les raccourcis à créer lors de l'installation,cliquez sur le bouton Next >

 


ETAPE 5 : FICHIERSDE LICENCE

 

 

 

Uneoption très intéressante d'InnoSetup est de pouvoir afficher des fichiers delicence ou d'information lors de votre installation.

 

Ilvous faut auparavant créer des fichiers au format txt que vous pouvez alorsinclure dans votre setup et les montrer soit au démarrage de l'installation,soit à la fermeture.

 

 

 

Letextbox license file permet d'ajouter un fichier de licence à votreinstallation.

 

Letextbox information file shown before installation permet d'ajouter un fichierd'information à afficher avant l'installation (par exemple un fichier derecommandation ou de matériel requis).

 

Letextbox intormation file shown after installation permet d'ajouter un fichierd'information à afficher après l'installation (par exemple, un fichier lisezmoi).


 

Voilà,il s'agit de la dernière étape de l'assistant. Si vous cliquez sur le boutonNext >, une dernière page s'affiche vous indiquant que vous êtes arrivé aubout de l'assistant, et que le script InnoSetup va être crée :

 

 

Ilvous suffit alors de cliquez sur le bouton Finnish pour générer le scriptd'installation et retourné dans l'éditeur de script InnoSetup.

 


ETAPE 6 : COMPRENDRELE SCRIPT GENERE

 

 

InnoSetupvous demande si vous voulez compiler le script généré dès qu'il a fini de leconcevoir. Mais avant de foncer tête baissée sur le fichier d'installationcrée, il va falloir réfléchir un peu et essayer de comprendre le script qui aété généré pour savoir le personnaliser.

 

Toutd'abord, vous pouvez remarquer que certaines lignes sont colorées en vert, etqu'elles ont toutes le caractère « ; » comme premier caractère deligne. Il s'agit de lignes de commentaires : des lignes qui serontignorées par le compilateur lors de la génération du programmationd'installation final, mais ces lignes sont bien pratiques pour documenter votrescript InnoSetup !

 

Lescript se décompose en plusieurs parties qui sont facilement reconnaissablescar elles sont toutes précédées par une balise indiquant le type de partie quiva suivre. Vous pouvez ainsi voir les principales parties suivantes :

-          [Setup] : partie qui traite des généralités du setup : titre,version, dossier d'installation, URL de sites internet, etc.

-          [Tasks] : partie qui traite des travaux disponibles lors del'installation : il s'agit d'étape qui demande un choix à l'utilisateur.Par exemple, l'utilisateur peut ou non créer un raccourci vers votre programmesur son bureau.

-          [Files] : partie qui traite des fichiers inclus dans le programmed'installation. C'est la partie la plus important du script puisque c'est ellequi vous permet de définir l'emplacement final de chaque fichier. Elle vouspermet aussi de vérifier les versions de fichiers, de réagir selon l'anciennetéd'une version, d'enregistrer une librairie dans le registre, etc.

-          [Icons] : partie qui définit les icônes à créer parl'installation : icônes du bureau, de la barre de lancement rapide, dumenu démarrer, etc.

-          [Run] : partie qui indique au programme d'installation quels sontles applications à lancer à la fin de l'installation. Il peut s'agir de votreprogramme lui-même, mais également des librairies stockées dans des programmesd'installation qu'il faut exécuter avant de pouvoir lancer votre programme,etc.

 

Nous allons maintenant voir ensemble comment sontinterprétées les lignes de chacune de ses principales parties :

 

LA PARTIE SETUP

 

La partie setup contient tout ce que le programmed'installation doit savoir sur le nom du programme à installer, sa version,etc. Bref, tout ce qui lui faut pour rendre l'installation plus personnelle.


 

Voici un exemple de partie setup :

 

AppName=My Program

AppVerName=My Program 1.5

AppPublisher=My Company, Inc.

AppPublisherURL=http://www.mycompany.com

AppSupportURL=http://www.mycompany.com

AppUpdatesURL=http://www.mycompany.com

DefaultDirName={pf}\My Program

DefaultGroupName=My Program

AllowNoIcons=yes

LicenseFile=E:\Program Files\Inno Setup 4\license.txt

InfoBeforeFile=E:\Program Files\Inno Setup 4\Info Before.txt

InfoAfterFile=E:\Program Files\Inno Setup 4\Info After.txt

 

AppName : Nom du programme principal à installer (sans laversion).

AppVerName : Nom du programme principal à installer avecla version.

AppPublisher : Nom de la compagnie ou de la personnequi distribue le programme.

AppPublisherURL : URL du site Internet dudistributeur du programme.

AddSupport : URL du site Internet qui s'occupe dusupport technique du programme.

AddUpdatesURL : URL du site Internet qui s'occupe dela mise à jour du programme.

DefaultDirName : Répertoire par défaut du programmedans le répertoire Program Files.

DefaultGroupName : Répertoire par défaut du programmedans le menu démarrer.

AllowNoIcons : Autoris ou non la désactivation desicônes de raccourci lors de l'installation.
LicenseFile : Chemin d'accès au fichier contenant les informations delicence du programme.

InfoBeforeFile : Chemin d'accès au fichier contenantles informations à afficher avant l'installation.

InfoAfterFile : Chemin d'accès au fichier contenantles informations à afficher après l'installation.

 

LA PARTIE TASKS

 

InnoSetup permet de créer des tâches à éxécuter (ou ne paséxécuter) qui sont bien pratiques. Par exemple, vous pouvez permettre àl'utilisateur de créer ou non un raccourci sur le bureau, un raccourci dans lemenu démarrer, associer votre programme à une extension de fichier, etc.

 

Voici un exemple de tâche pour permettre à l'utilisateurde lancer (ou non) le programme à la fin du setup, qui sera décochée par défaut(il ne s'agit que de la définition de la tâche, et non de la définition pourlancer un programme (voir la section Run pour cela) :

 

Name:Demarrage; Description: demarrer le programme à la fin du setup; Flags:exclusive unchecked

 

Vous devez spécifier : un nom pour la tâche (iciDemarrage) qui permet de l'identifier et de l'appeler lorsque nécessaire. Unedescription (ici « demarrer le programme à la fin du setup ») quipermet d'afficher un texte d'explication dans le setup à côté de la checkbox.

Vous pouvez également spécifier des flags d'options. Ici,nous avons spécifier le flag « exclusive » qui permet d'avoir uncheckbox et non un bouton d'options multiples, et le flag« unchecked » qui permet de décocher l'option par défaut.

 

LA PARTIE FILE

 

La partie file du script correspond à la liste desfichiers à intégrer à l'installation : où aller les chercher pour lescompacter dans le setup, et où les placer lors de l'installation. Elle permetégalement de définir les options de copie sous forme de flag.

 

Exemple de fichiers :

 

Source: msvbvm60.dll; DestDir:{sys}; Flags: restartreplace uninsneveruninstall sharedfile regserver

Source: comdlg32.ocx; DestDir:{sys}; Flags: promptifolder regserver sharedfile

Source:c:\Images\image.bmp; DestDir: {app}

 

Dans cet exemple, nous pouvons voir que InnoSetupintégrera le fichier msvbvm60.dll (qui doit être contenu dans le même dossierque le fichier de script, vu qu'aucun répertoire n'est mentionné) dans lesetup. Il le copiera dans le répertoire système (System sous Windows 95/98/NT4, System32 sous Windows 2000/XP). En plus de cela, il indique qu'il s'agitd'un fichier à ne pas désinstaller (flag uninsneveruninstall), qu'il s'agitd'un fichier partagé (sharedfile) et qu'il faut l'enregistrer dans le registre(regserver). De plus, le flag restartreplace permet de remplacer le fichiers'il existe déjà au redémarrage de l'ordinateur (ainsi, innosetup évited'écraser un fichier système en cours d'utilisation !).

InnoSetup intégrera également le fichier comdlg32.ocx, quilui aussi doit se trouver dans le répertoire du script vu qu'aucun répertoiren'est spécifié. Il contient le flag promptifolder qui permet de prévenirl'utilisateur si le fichier à copier est plus ancien que le fichieractuellement installé. Ainsi, l'utilisateur peux choisir de remplacer lenouveau fichier par celui du setup, ou d'ignorer l'écrasement.

Enfin, InnoSetup intégrera dans le setup le fichier image« image.bmp » qui est situé dans le dossier« c:\images\image.bmp », et il le copiera dans le dossier del'application (répertoire {app}) lors de l'installation.

 

LA PARTIE ICONS

 

La partie Icons permet de créer les icônes reliées auprogramme. Vous pouvez par exemple créer des icônes sur le bureau, dans labarre des tâches, etc.

Voici un exemple de création d'icône dans le menudémarrer :

 

Name: {group}\ My Program ; Filename: {app}\ My Program .exe; WorkingDir: {app}

Danscet exemple, nous créons une icône dans le groupe de programmes nommé « MyProgram ». L'icône portera le nom « My Program », et feraréférence au programme 'My Program.exe » que nous installons avec le setupcrée.

 

LA PARTIE RUN

 

InnoSetup permet enfin de lancerun programme. Ceci est possible dans la partie Run du script. Par exemple, sivous voulez lancer votre programme nouvellement installé, vous pouvez taper cescript :

 

Filename: {app}\My Program.exe;WorkingDir: {app}; Tasks: Demarrage

 

Remarquez l'utilisation de latâche Demarrage : si le checkbox de cette tâche n'est pas côché, le setupn'éxécutera pas le programme ! Vous pouvez ainsi permettre à l'utilisateurde personnaliser son installation avec des tâches, et vous en servir pourcopier des fichiers, créer des icônes, etc.

 


CONCLUSION

 

 

 

Vous venez de créer votrepremière installation avec InnoSetup. Vous pouvez déjà remarquer combien il estfacile et rapide de faire une installation intuitive grâce à l'assistant deInnoSetup ! InnoSetup a le grand avantage d'être très personnalisable, etvous pouvez presque tout modifier, que ce soit la langue, les images, lesétapes d'installation, etc. Mais ceci dépasse le cadre de ce tutorial qui n'estqu'une brève introduction à ce qu'il est possible de faire avec ce programmemerveilleux !

 

Je peux vous conseillerd'utiliser le programme ISTools, le compagnon idéal de InnoSetup qui permet depersonnaliser l'installation crée d'une manière encore plus intuitive qu'avecInnoSetup !

 

J'espère que la lecture de ce tutorialvous a satisfaite.

 

signaler à un administrateur
Commentaire de ghuysmans99 le 02/01/2007 20:36:19

OOps ... Il y a un petit problème avec la mise en page !
Est-ce que quelqu'un pourrait remettre ca d'applomb ??

signaler à un administrateur
Commentaire de DARKSIDIOUS le 02/01/2007 21:09:23 administrateur CS

Tiens c'est marrant cà, mon commentaire sur le tuto n'est pas passé ! Je vais le signaler aux progz.

Donc je recommence :

Pour avoir la même version, au format doc, avec une présentation meilleure :
http://dark-sidious.chez-alice.fr/cours/TUTORIAL_-_Install_avec_InnoSetup.zip

signaler à un administrateur
Commentaire de fuckoff67 le 19/03/2008 02:30:53

Super, heureusement que je suis tombé sur votre tuto merci à vous.

signaler à un administrateur
Commentaire de thierylaurent le 12/06/2008 15:48:51

merci darksidious pour ta contributions impécable la doc

signaler à un administrateur
Commentaire de waspy59 le 22/09/2008 12:45:55

hello tous,

j'ai découvert inno setup il y a plus d'un an grâce à Darcksidious.

Jusque là pas de soucis pour créer des setups simples.
Mais actuellement je suis un peu bloqué... je veux installer des fonts en même tps que mon programme et faire redémarrer le PC.
J'ai fait des tests sans succès... apparemment faut modifier le script mais je sais pas faire sniff

donc si quelqu'un peut m'expliquer comment faire...

signaler à un administrateur
Commentaire de ofk_one le 31/10/2008 16:36:08

Meme si il n'y a pas d'image, les etapes sont dans l'ordre et clairs donc tres facile a appliquer

signaler à un administrateur
Commentaire de janhsh le 27/06/2009 11:11:33

Il est beaucoup plus facile d'utiliser ISTools  ( http://www.istool.org ) qui permet de créer et de modifier très facilement le script d'Inno Setup

Pour répondre à la question de waspy59, voici un exemple d'installation d'une police TTF

Source: "OZHANDIN.TTF"; DestDir: "{fonts}"; FontInstall: "Oz Handicraft BT"; Flags: onlyifdoesntexist uninsneveruninstall

IMPORTANT: il faut absolument que le nom de la fonte spécifiée comme argument pour FontInstall soit le même que celui contenu dans le fichier TTF

Il faut également utiliser onlyifdoesntexist et uninsneveruninstall parce que:
- on ne peut pas remplacer une fonte déjà installée
- si la fonte est utilisée, une tentative de désinstallation peut cracher l'application qui utilise la fonte ou même complètement le système d'exploitation

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,094 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.