Programme d'installation avancé de Windows (MSI) utilisant InstallShield

Personnalisation de l'apparence et du comportement de votre programme d'installation

Améliorer l'apparence de votre programme d'installation

Le cours « Programme d'installation avancé de Windows utilisant InstallShield » vous permettra d'acquérir une bonne compréhension des techniques avancées pour personnaliser l'apparence et le comportement de votre programme d'installation logiciel.

Les techniques utilisées dans le cadre de ce cours s'appliquent aux projets Basic MSI dans InstallShield, qui utilisent le service Windows Installer (MSI) pour le comportement et l'apparence de votre installation. Même si ce cours fait parfois référence aux actions personnalisées d'InstallScript dans les projets Basic MSI, il ne couvre pas les projets InstallScript MSI.

InstallShield MicroConsulting

Le service InstallShield MicroConsulting offre une assistance pour certains besoins particuliers et ponctuels, par exemple des difficultés d'installation ou le dépannage en cas d'échec des correctifs et des mises à jour. Proposé à distance par nos experts en installation, il comprend huit heures de consulting dédié (sur une journée de travail) dans un, deux ou trois domaines liés à l'installation.

En savoir plus

Objectifs

Dans ce cours, vous découvrirez comment :

  • Améliorer l'apparence de votre programme d'installation à l'aide des types de contrôle avancés
  • Fournir des commentaires d'utilisateur détaillés en utilisant des panneaux, des informations de progression et la journalisation
  • Créer convenablement des actions personnalisées pour étendre les fonctionnalités de Windows Installer (et savoir à quel moment il ne faut pas les étendre !).
  • Éviter les pièges courants lors du codage d'actions personnalisées
  • Utiliser les prérequis d'InstallShield et des installations chaînées pour répondre aux exigences de packages multiples

Conditions préalables au cours

  • Cours de formation « InstallShield, Projets MSI » terminé avec succès
  • Mise en œuvre d'au moins 1 projet d'installation de grande ampleur avec le type de projet Basic MSI
  • Mise en œuvre d'au moins 2 installations moyennes avec le type de projet Basic MSI
  • Mise en œuvre d'au moins 4 petites installations avec le type de projet Basic MSI

Remarque : mettre en œuvre des projets InstallScript fournit une base solide pour le domaine de l'installation, mais cette expérience seule ne suffit pas pour suivre le cours MSI avancé. Au moins une des conditions ci-dessus doit être remplie pour pouvoir s'inscrire à ce cours, quelle que soit l'expérience du participant avec InstallScript.

Plusieurs sections du cours supposent une connaissance de base de la programmation ou des langages de script tels que C/C++, InstallScript, C# ou VBScript.

Programme du cours

Les thématiques et sections de cours suivantes seront abordées au sein de la formation. S'il y a un thème spécifique que vous souhaitez aborder plus en détail, dites-le au formateur dès le premier jour des cours.

Introduction et révision

Le cours débute par un bref passage en revue des concepts et de la terminologie de Windows Installer et InstallShield qui seront utilisés tout au long de la semaine :

  • À propos des packages d'installation Windows Installer
  • Organisation des produits : fonctions, composants et chemins d'accès aux clés
  • Propriétés et conditions
  • Utilisation de l'environnement InstallShield
  • Validation de package
  • Fonctionnalités introduites dans les dernières versions d'InstallShield

Interface utilisateur

Le but de l'interface utilisateur de votre programme d'installation est d'afficher des informations à l'utilisateur, de demander à l'utilisateur des informations nécessaires à l'installation et la configuration de votre projet, et d'afficher les informations de progression lorsque des modifications du système sont effectuées. Dans cette section, vous en saurez plus sur les thèmes suivants :

  • Mise en place d'interactions entre les contrôles
  • Utilisation des contrôles MaskedEdit pour la saisie utilisateur formatée
  • Fonctionnalités et composants :
    • Destinations de fichiers multiples
    • Personnalisation de la boîte de dialogue de sélection de fonctionnalités
    • Conditions en fonction des fonctionnalités et des composants
  • Contrôles VolumeSelectCombo
  • Affichage de panneaux lors du transfert de données
  • Techniques d'actualisation dynamique des boîtes de dialogue

Actions personnalisées

La plupart des modifications système apportées par le programme d'installation sont gérées par les actions et les tables standard de Windows Installer : les fichiers que vous installez sont gérés par la table des fichiers et l'action InstallFiles, les données de registre sont gérées par la table du registre et l'action WriteRegistryValues, et ainsi de suite. Ces actions standard ne pouvant pas gérer l'intégralité des tâches qu'un programme d'installation doit effectuer, Windows Installer prend en charge les actions personnalisées. Cette section décrit les points suivants :

  • Comment utiliser Windows Installer pour éviter les actions personnalisées :
    • Copie, déplacement et suppression de fichiers
    • Lecture et suppression d'informations de registre
    • Utilisation d'extensions InstallShield
  • Types d'actions personnalisées et avantages/inconvénients
  • Planification des actions :
    • Actions immédiates et différées, et comment déterminer le type d'action à utiliser
    • Action de restauration et de validation
    • Contextes utilisateur et système
    • Détection et gestion de l'installation, la désinstallation, la restauration et la désinstallation-restauration
  • Actions personnalisées « simples » : lancement des exécutables, définition des propriétés et des propriétés du répertoire, et affichage des messages d'erreur
  • Écriture de code pour les actions personnalisées de script, MSI DLL, InstallScript et de code managé
    • Récupération et définition des valeurs de propriété
    • Récupération des valeurs de propriété lors d'une exécution différée
    • Renvoi de la réussite à Windows Installer
    • Déclenchement de la restauration
    • Interaction supplémentaire avec l'installation en cours d'exécution

Techniques des actions personnalisées supplémentaires

Au-delà des notions de base, cette section décrit des techniques avancées pour utiliser des tables de base de données MSI standard et personnalisées au moment de l'exécution, ainsi que différents réglages pour améliorer l'apparence de votre programme d'installation et la confiance de l'utilisateur.

  • Accès et modification du package MSI en cours d'exécution pour obtenir des effets dynamiques tels que :
    • Remplissage des contrôles de type liste lors de l'exécution
    • Masquage des fonctionnalités après CostFinalize
    • Modification des descriptions de raccourcis au moment de l'exécution
  • Utilisation de tables MSI personnalisées
  • Écriture dans le fichier journal de Windows Installer
  • Commentaires d'utilisateur supplémentaires au moment de l'exécution de l'action :
    • Texte d'action statique
    • Données d'action détaillées
    • Interaction avec le contrôle de barre de progression
    • Gestion du bouton Annuler
    • Affichage correct des boîtes de message

Autres sujets

Le cours se termine par des discussions sur les outils supplémentaires et les techniques que vous pouvez utiliser pour améliorer le comportement de votre installation, à savoir :

  • Redémarrages de Windows Installer et comportement de type « fichiers en cours d'utilisation »
  • Utilisation des prérequis d'InstallShield
  • Utilisation de la table de répertoire
  • Installations chaînées
  • Packages multi-instances

Récapitulatif

À la fin du cours, vous devrez travailler sur un projet qui intègre les principaux thèmes du cours :

 

  • Présentation dynamique des données à l'utilisateur
  • Écriture d'une action qui gère correctement l'installation, la désinstallation, la restauration, la restauration de la désinstallation et le nettoyage
  • Journalisation des modifications d'action
  • Affichage d'informations détaillées sur l'état d'avancement