Créer des packages de programme d’amorçage

Le programme d’installation est un programme d’installation générique qui peut être configuré pour détecter et installer les composants redistribuables, comme les fichiers Windows Installer (.msi) et les programmes exécutables. Le programme d'installation est également appelé programme d'amorçage. Il est programmé via un ensemble de manifestes XML qui spécifient les métadonnées permettant de gérer l'installation du composant. Chaque composant redistribuable, ou prérequis, qui apparaît dans la boîte de dialogue Prérequis pour ClickOnce est un package de programme d’amorçage. Un package de programme d'amorçage est un groupe de répertoires et de fichiers qui contiennent des fichiers manifeste qui décrivent la façon dont le composant requis doit être installé.

Le programme d'amorçage détecte d'abord si l'un des composants requis est déjà installé. Si des composants requis ne sont pas installés, le programme d'amorçage commence par afficher les contrats de licence. Une fois que l’utilisateur a accepté les contrats de licence, l’installation des prérequis commence. Si tous les composants requis sont détectés, le programme d'amorçage démarre simplement le programme d'installation de l'application.

Créez des packages de programme d’amorçage personnalisés

Vous pouvez générer les manifestes de programme d’amorçage à l'aide de l'Éditeur XML de Visual Studio. Pour voir un exemple de création de package de programme d’amorçage, consultez Procédure pas à pas : Créer un programme d’amorçage personnalisé pour afficher une invite de confidentialité.

Pour créer un package de programme d’amorçage, vous devez créer un manifeste de produit et, pour chaque version localisée d’un composant, un manifeste de package également.

  • Le manifeste du produit, product.xml, qui contient toutes les métadonnées indépendantes de la langue du package. Il contient les métadonnées communes à toutes les versions localisées du composant redistribuable. Pour créer ce fichier, consultez Guide pratique pour créer un manifeste de produit.

  • Le manifeste du package, package.xml, qui contient les métadonnées spécifiques à une langue. Il contient généralement les messages d'erreur localisés. Un composant doit avoir au moins un manifeste du package pour chacune de ses versions localisées. Pour créer ce fichier, consultez Guide pratique pour créer un manifeste de produit.

Une fois ces fichiers créés, placez le fichier manifeste du produit dans un dossier nommé en fonction du programme d'amorçage personnalisé. Le fichier manifeste du package est placé dans un dossier nommé en fonction des paramètres régionaux. Par exemple, si le fichier manifeste du package est destiné à une redistribution en anglais, placez le fichier dans un dossier nommé en. Répétez ce processus pour chacun des paramètres régionaux, par exemple ja pour le japonais et de pour l'allemand. Le package de programme d'amorçage personnalisé final peut avoir la structure de dossiers suivante.

CustomBootstrapperPackage
  product.xml
  CustomBootstrapper.msi
  de
    eula.rtf
    package.xml
  en
    eula.rtf
    package.xml
  ja
    eula.rtf
    package.xml

Ensuite, copiez les fichiers redistribuables dans l'emplacement correspondant au dossier du programme d'amorçage. Pour plus d’informations, consultez Guide pratique pour créer un package de programme d’amorçage localisé.

*\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages*

ou

*<VS Install Path>\MSBuild\Microsoft\VisualStudio\BootstrapperPackages*

Notes

Le chemin d’accès répertorié ci-dessus sous le chemin d’installation de Visual Studio fonctionne à partir de la version 7 de Visual Studio 2019 Update.

Vous pouvez également trouver l'emplacement du dossier de programme d'amorçage à partir de la valeur Chemin d'accès de la clé de Registre suivante :

*HKLM\Software\Microsoft\GenericBootstrapper*

Sur les systèmes 64 bits, utilisez la clé de Registre suivante :

*HKLM\Software\Wow6432Node\Microsoft\GenericBootstrapper*

Chaque composant redistribuable apparaît dans son propre sous-dossier du répertoire packages. Le manifeste du produit et les fichiers redistribuables doivent être placés dans ce sous-dossier. Les versions localisées du composant et des manifestes du package doivent être placées dans des sous-dossiers nommés en fonction du nom de culture.

Une fois ces fichiers copiés dans le dossier de programme d’amorçage, le package de programme d’amorçage apparaît automatiquement dans la boîte de dialogue Composants requis de Visual Studio. Si votre package de programme d’amorçage personnalisé n’apparaît pas, fermez puis rouvrez la boîte de dialogue Prérequis. Pour plus d’informations, consultez Composants requis, boîte de dialogue.

Le tableau suivant présente les propriétés qui sont automatiquement remplies par le programme d'amorçage.

Propriété Description
ApplicationName Le nom de l’application.
ProcessorArchitecture Processeur et bits par mot de la plateforme ciblée par un exécutable. Les valeurs sont notamment les suivantes :

- Intel
- IA64
- AMD64
VersionNT Numéro de version des systèmes d’exploitation Windows. La syntaxe de la version est Major.Minor.ServicePack.
VersionMSI La version de l'assembly Windows Installer (msi.dll) à exécuter durant l'installation.
AdminUser Cette propriété est définie si l'utilisateur dispose de privilèges d'administrateur. Les valeurs sont true ou false.
InstallMode Le mode d'installation indique l'emplacement d'installation du composant. Les valeurs sont notamment les suivantes :

- HomeSite : Les prérequis sont installés à partir du site web du fournisseur.
- SpecificSite : Les prérequis sont installés à partir de l’emplacement de votre choix.
- SameSite : Les prérequis sont installés à partir du même emplacement que celui de l’application.

Séparation des composants redistribuables à partir des installations des applications

Vous pouvez empêcher le déploiement de vos fichiers redistribuables dans les projets d'installation. Pour ce faire, créez une liste de composants redistribuables dans le dossier RedistList de votre répertoire du .NET Framework :

%ProgramFiles%\Microsoft.NET\RedistList

La liste de composants redistribuables est un fichier XML que vous devez nommer en respectant le format suivant : <Nom de la société>.><Nom du composant>.RedistList.xml. Ainsi par exemple, si le composant s’appelle Datawidgets et qu’il a été fait par Acme, utilisez Acme.DataWidgets.RedistList.xml. Voici un exemple de contenu de la liste de composants redistribuables :

<?xml version="1.0" encoding="UTF-8"?>
<FileList Redist="Acme.DataWidgets" >
<File AssemblyName="Acme.DataGrid" Version="1.0.0.0" PublicKeyToken="b03f5f7f11d50a3a" Culture="neutral" ProcessorArchitecture="MSIL" InGAC="true" />
</FileList>