Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Présentation des mises à jour du package d’application MSIX
Lorsqu’un package d’application MSIX est créé, un fichier manifeste contenant des détails relatifs aux fichiers inclus dans le package d’application MSIX est généré. Lors de la création du package, un élément de métadonnées est créé et stocké dans le package .msix ou .msixbundle, ce qui permet aux parties du package d’être identifiées de manière unique par l’Windows. Plus tard, lors de la mise à jour, Windows pouvez utiliser ce fichier de métadonnées pour comparer l’ancien package au nouveau package et déterminer les éléments à télécharger sur l’appareil. Étant donné que ces métadonnées permettent d’identifier de manière unique des parties du package, cela signifie que le mécanisme de mise à jour différentielle fonctionne entièrement de n’importe quelle version d’un package à n’importe quelle autre version d’un package (en supposant que le package source a une version inférieure à celle du package cible).
Tout commence au niveau du fichier AppxBlockMap.xml (les métadonnées susmentionnées). Le fichier AppxBlockMap.xml est un document XML qui contient une liste bidimensionnelle d’informations sur les fichiers du package. La première dimension présente des détails de haut niveau sur le fichier (par exemple, le nom et la taille) et la seconde dimension fournit des représentations de hachage SHA2-256 de chaque tranche de 64 Ko de ce fichier (alias le « bloc »).
Le premier hachage représente le premier bloc de 64 Ko du fichier et le deuxième hachage représente les 35 Ko restants, étant donné que le fichier est 101188 octets.
Lors d’une mise à jour, si le deuxième bloc de ce fichier a été modifié, le hachage sera également mis à jour pour refléter ce fait. Le composant de téléchargement comprend cela et ne retirera que le deuxième bloc et réutilisera le premier bloc inchangé de l’ancien paquet.
En outre, si un fichier entier n'a pas changé (qui est déterminé par l'ensemble complet des blocs qui ne changent pas), ce fichier peut être réutilisé à partir du package existant , ce qui entraîne des économies considérables pour les utilisateurs Windows 10
Mise à niveau vers des versions plus récentes
Lorsqu’une version plus récente du package d’application MSIX est installée, le fichier manifeste est comparé et les blocs de fichiers modifiés sont identifiés. Lorsque le package d’application MSIX est mis à niveau vers la version la plus récente, seuls les fichiers modifiés sont récupérés, ce qui réduit la consommation de bande passante si les applications mises à jour résident sur un partage réseau ou en dehors d’une organisation.
Mise à niveau vers des versions plus anciennes
Lorsqu’une version antérieure du package d’application MSIX est installée, le fichier manifeste est comparé et les blocs de fichiers modifiés sont identifiés. Lorsque le package d’application MSIX est mis à niveau vers l’ancienne version, seuls les fichiers modifiés sont récupérés, ce qui réduit la consommation de bande passante si les applications mises à jour résident sur un partage réseau ou en dehors d’une organisation.
Optimisation des expériences de mise à niveau
La livraison ou l’installation d’un package d’application MSIX sur un appareil peut être configurée pour améliorer l’expérience utilisateur. Lorsqu’une application est déployée, l’appareil peut être configuré pour mettre à jour l’application une fois que l’utilisateur l’a fermée ou forcer la fermeture de l’application et la mettre à jour de force.
PowerShell
L’installation d’un package d’application MSIX sur un appareil à l’aide de PowerShell tire parti de l’applet de commande add-appxpackage . Cette applet de commande contient les paramètres suivants qui modifient l’installation du package d’application MSIX ou mettent à niveau l’expérience utilisateur.
| Paramètre | Descriptif |
|---|---|
| -ReporterL'inscriptionLorsqueLesPaquetsSontUtilisés | Indique que cette applet de commande empêchera la mise à jour du package d’application MSIX lorsque l’application est ouverte par l’utilisateur. |
| -ForceApplicationShutdown | Indique que cette applet de commande force l’arrêt de tous les processus actifs associés au package ou à ses dépendances |
| -ForceUpdateFromAnyVersion | Indique que le package d'application MSIX obligera la mise en scène/enregistrement d'une version spécifique d'un package, même si une version supérieure est déjà mise en scène ou enregistrée. |
| -InstallAllResources | Indique que l’applet de commande force le déploiement de tous les packages de ressources spécifiés à partir d’un argument bundle. Cela remplace la vérification de l’applicabilité des ressources du moteur de déploiement et force la préparation de tous les packages de ressources. |
| -RetenirLesFichiersEnÉchec | Dans le cas d’un déploiement raté, si ce commutateur est défini sur True, les fichiers qui ont été créés sur la machine cible pendant le processus d’installation ne sont pas supprimés. |
| -Mettre à jour | Spécifie que le package ajouté est une mise à jour de package de dépendance. Un package de dépendances est supprimé lorsque l’application parente est supprimée. S’il n’est pas spécifié, le package ne sera pas supprimé lorsque l’application parent sera supprimée. |
Pour obtenir la liste complète des paramètres disponibles pour cette applet de commande, consultez l’article PowerShell sur add-appxpackage.