Créer des installateurs avec Inno Setup

Table des matières
Configuration Inno permet de configurer le processus d'installation que doit suivre le logiciel, à l'aide d'un assistant ou d'un assistant et en mode plus avancé avec la programmation d'un script, qui sont des fichiers texte au format séquentiel qui vous permettront de déterminer les étapes à suivre .

Les scripts d'installation d'Inno sont des fichiers texte avec une extension .iss. Le script contrôle tous les aspects de l'installation. Il spécifie quels fichiers doivent être installés et où, quels menus et dossiers doivent être créés et quelles ressources l'application que nous installons nécessite.
Les fichiers de script sont des fichiers texte qui peuvent être créés et modifiés à partir d'Inno Setup ou de n'importe quel éditeur de texte. Le logiciel nous permettra de compiler le fichier de script iss et par défaut il attribuera le nom Setup.exe une fois compilé, donc nous aurons un programme complet, prêt à distribuer et à exécuter l'installation.
Pour commencer un exemple simple nous allons commencer, dans ce cas nous le ferons depuis Linux avec Vin et l'assistante.

Ci-dessous, nous détaillons les données de l'application, le nom de l'application, la version, la société qui l'a développée, le site Web.

La prochaine étape sera de configurer dans quel dossier l'application sera installée, par défaut ce sera Program Folder ou Program Files, à la fois sous Windows et sous Linux avec Wine ce dossier se trouve, si le dossier d'installation n'existe pas, le logiciel va le créer.

Ensuite nous devons affecter notre fichier exécutable et ses dépendances ou bibliothèques, ici nous prenons comme exemple un logiciel que nous avions développé avec Java et converti en exe avec Launch4j dans le tutoriel Netbeans et Sqlite en trois couches - Partie II

La prochaine étape sera de configurer dans quel menu l'application sera intégrée et quelles icônes elle affichera, puis sur l'écran suivant il nous demandera d'ajouter les fichiers txt ou html avec les informations de licence, l'aide et le texte avant et après l'installation .

Les scripts d'installation d'Inno sont organisés en sections. Chaque section contrôle un aspect différent de l'installation. Une section est démarrée en spécifiant le nom de la section entre crochets []. Au sein de chaque section, nous préciserons les actions à mener.
Enfin, nous ajouterons les icônes et configurerons la disposition des menus. A la fin, nous allons créer le script et nous devons le compiler à partir du menu Build> Compile. Cela générera un dossier de sortie avec le fichier setup.exe, qui est le programme d'installation.
Ici, nous pouvons voir le programme d'installation exécuté sous Linux sur Wine, il fonctionne donc à la fois sur Windows et Linux.

Analysons le script généré


Dans define, nous configurons les données de l'application en utilisant les directives #define
 #define MyAppName "Tutoriels" #define MyAppVersion "2.0" #define MyAppPublisher "Myempresa" #define MyAppURL "http://www.mycompany.com/" #define MyAppExeName "mycompany.exe" 
La section [Setup] contient les paramètres globaux utilisés par le programme d'installation et de désinstallation. Les politiques peuvent être personnalisées sous forme de mise à jour logicielle ou de lien d'assistance technique.
 [Configuration] AppId = {{3502D097-DF67-49DD-B98B-59F0866126BB} AppName = {# MyAppName} AppVersion = {# MyAppVersion}; AppVerName = {# MyAppName} {#MyAppVersion} AppPublisher = {# MyAppPublisher} = AppPublisherL MyAppURL} AppSupportURL = {# MyAppURL} AppUpdatesURL = {# MyAppURL} DefaultDirName = {pf} \ {# MyAppName} DefaultGroupName = {# MyAppName} OutputBaseFilename = setup Compression = lzma SolidCompression = yes 
Dans la section [Langues] nous définissons les langues d'installation, ici nous voyons que nous utilisons l'anglais et l'espagnol, tirés directement du dossier Langues de l'InnoSetup :
 [Langues] Nom : « anglais »; MessagesFile : "compilateur : Default.isl" Nom : « espagnol »; MessagesFile : "compilateur : Languages ​​\ Spanish.isl" 
La section [Tâches] est facultative. Définit toutes les tâches de configuration personnalisables que l'utilisateur effectuera pendant l'installation. Créer un menu, des icônes, associer des extensions de fichiers à notre application.
 [Tâches] Nom : "desktopicon"; Description : "{cm : CreateDesktopIcon}" ; Description du groupe : "{cm: AdditionalIcons}" ; Drapeaux : non cochés 
Le paramètre Flags ou Flag est un ensemble d'options supplémentaires séparées par des espaces. Les options suivantes sont prises en charge.
vérifiable seule : indique que si un composant n'est pas coché, toutes ses dépendances le seront.
vérifié une fois : indique que l'installation d'un composant doit être décochée lorsque le programme d'installation trouve une version précédente de la même application déjà installée, afin que l'utilisateur puisse décider de la remplacer ou non.
redémarrage: Indique qu'après l'exécution d'une tâche, l'utilisateur est invité à redémarrer le système à la fin de l'installation. Exemple si un serveur ou une base de données est installé et que nous avons besoin d'un redémarrage pour qu'il soit disponible.
décoché : indique que l'option doit être distillée et doit être sélectionnée par l'utilisateur.
La section [Fichiers] définit les paramètres et les spécifications de chaque fichier de notre application. L'indicateur isreadme indiquera que le fichier est en lecture seule, tandis que onlyifdoesntexist indiquera que le fichier sera copié tant qu'il n'existe pas.
 [Fichiers] Source : "Z:\mycompany\dist\mycompany.exe"; DestDir : "{app}" ; Indicateurs : Source : "Z:\mycompany\dist\help.txt" ; DestDir : "{app}" ; Indicateurs : isreadme Source : "Z:\mycompany\dist\dbecompany.sqlite" ; DestDir : "{app}" ; Indicateurs : seulement si n'existe pas 
La section [Icônes] indique les icônes de chaque menu, Bureau ou Raccourci
 [Icônes] Nom : "{group} \ {# MyAppName}"; Nom de fichier : "{app} \ {# MyAppExeName}" Nom : "{commondesktop} \ {# MyAppName}" ; Nom de fichier : "{app} \ {# MyAppExeName}" ; Tâches : icône de bureau 
La section [Exécuter] est facultative et spécifie quels programmes doivent être exécutés après l'installation du logiciel, mais avant la fin du programme d'installation. Ici, nous pouvons installer des dépendances, le cas échéant, telles que Net Framework ou Java SE Runtime Environment
 [Exécuter] Nom de fichier : "{app} \ {# MyAppExeName}"; Description : "{cm : LaunchProgram, {# StringChange (MyAppName, '&', '&&')}}"; Drapeaux : nowait postinstall 
Certains indicateurs pris en charge par cette section sont :
non attends: spécifie que le programme d'installation n'attendra pas la fin de l'exécution du processus avant de passer à la tâche suivante [Exécuter] ou de terminer l'installation.
post-installation : demande au programme d'installation de créer une case à cocher pour informer que l'installation de l'application ou d'un certain composant est terminée. L'utilisateur peut décocher ou cocher cette case et donc choisir si cette tâche doit être traitée ou non. C'est pour si nous avons déjà un composant installé et que nous ne voulons pas qu'il l'installe à nouveau.
D'autres sections que nous pouvons configurer à partir du Code de script de configuration Inno ils sont:
La section [Types] Cette section est facultative. Ici, nous définissons l'installation de certains composants selon les types de configuration, puis elle sera affichée sur la page Sélectionner les composants de l'assistant. Lors de la compilation, un ensemble de types de configuration par défaut est créé si vous définissez des composants dans une section [Components], puis chaque composant se voit attribuer un type.
La section [Types] est écrite en dessous de la section [Setup] Un avantage est que nous pouvons créer des types personnalisés pour les options d'installation, le plus connu est l'installation complète ou complète et personnalisée.

A travers les types nous créons un paramètre avec son nom et lui attribuons une description, puis nous créons des étiquettes pour les composants, nous attribuons une description ou un nom et ce qui sera le type d'installation qui correspond, par exemple, le logiciel sera installé dans tout type d'installation, mais pas d'aide, cela peut être utilisé pour installer différents composants selon le type d'installation.
 [Types] Nom : "pro"; Description : « Installation professionnelle » Nom : « PME »; Description : « Installation PME » Nom : « win »; Description : « Installation Windows » Nom : « lin »; Description : « Installation Linux » Nom : « personnelle »; Description : "Installation personnalisée"; Indicateurs : iscustom [Composants] Nom : "programme" ; Description : "Tutoriels" ; Types : pro PME perso ; Nom : "sqlitewin" ; Description : « base de données SQLite »; Types : pro win Nom : « sqlitelin »; Description : « base de données SQLite »; Types : pro lin Nom : « help.htm »; Description : "Aide" ; Types : pro [Fichiers] Source : "Z:\mycompany\dist\mycompanya.exe" ; DestDir : "{app}" ; Composants : Programme source : "Z:\mycompany\dist\sqlite.dllt; DestDir:"{app}"; Components: sqlitewin Source:"Z:\mycompany\dist\sqlite.so";DestDir:"{app}" ; Composants : sqliteline 

Ainsi, nous pouvons personnaliser l'installation de notre application, le script peut être programmé avec plus de complexité selon nos besoins.Avez-vous aimé et aidé ce tutoriel ?Vous pouvez récompenser l'auteur en appuyant sur ce bouton pour lui donner un point positif
wave wave wave wave wave