Options de Command-Line de maintenance du package du système d’exploitation DISM (.cab ou .msu)

Utilisez DISM avec l’armoire Windows (.cab) ou Windows Update fichiers du programme d’installation autonome (.msu) pour installer ou supprimer des mises à jour, des modules linguistiques et pour activer ou désactiver des fonctionnalités Windows. Les fonctionnalités sont des composants facultatifs pour le système d’exploitation principal.

Syntaxe

DISM.exe {/Image:<path_to_image_directory> | /Online} [dism_global_options] {servicing_option} [<servicing_argument>]

Les options de maintenance de package de système d’exploitation suivantes sont disponibles pour une image hors connexion :

DISM.exe /Image:<path_to_image_directory> [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]

Les options de maintenance de package de système d’exploitation suivantes sont disponibles pour un système d’exploitation en cours d’exécution :

DISM.exe /Online [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]

/Get-Help /?

Lorsqu’elle est utilisée immédiatement après une option de ligne de commande de maintenance de package, des informations sur l’option et les arguments sont affichées.

D’autres rubriques peuvent devenir disponibles lorsqu’une image est spécifiée.

Syntaxe :

Dism /Get-Help 

Exemples :

Dism /Image:C:\test\offline /Add-Package /?
Dism /Online /Get-Packages /?

/Get-Packages

Affiche des informations de base sur tous les packages de l’image. Utilisez l’argument /Format:Table ou /Format:List pour afficher la sortie sous forme de table ou de liste.

Syntaxe :

Dism /Get-Packages [/Format:{Table | List}]

Exemples :

Dism /Image:C:\test\offline /Get-Packages
Dism /Image:C:\test\offline /Get-Packages /Format:Table
Dism /Online /Get-Packages

/Get-PackageInfo

Affiche des informations détaillées sur un package fourni sous forme de fichier .cab. Seuls .cab fichiers peuvent être spécifiés. Vous ne pouvez pas utiliser cette commande pour obtenir des informations de package pour les fichiers .msu. /PackagePath:<path_to_package> peut pointer vers un fichier .cab ou un dossier.

Vous pouvez utiliser l’option /Get-Packages pour rechercher le nom du package dans l’image ou spécifier le chemin d’accès au fichier .cab. Le chemin d’accès au fichier .cab doit pointer vers la source d’origine du package, et non vers l’emplacement où le fichier est installé sur l’image hors connexion.

Syntaxe :

Dism /Get-PackageInfo {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}

Exemples :

Dism /Image:C:\test\offline /Get-PackageInfo /PackagePath:C:\packages\package.cab
Dism /Image:C:\test\offline /Get-PackageInfo /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Add-Package

Installe un package .cab ou .msu spécifié dans l’image.

Notes

Vous pouvez utiliser /Add-Package pour ajouter un package .msu à une image en ligne ou hors connexion Windows 11, version 21H2 ou ultérieure. Si vous utilisez une image Windows antérieure à Windows 11 version 21H2, vous pouvez uniquement ajouter des packages .msu sur des images cibles hors connexion.

Plusieurs packages peuvent être ajoutés sur une seule ligne de commande. L’applicabilité de chaque package est vérifiée. Si le package ne peut pas être appliqué à l’image spécifiée, vous recevez un message d’erreur. Utilisez l’argument /IgnoreCheck si vous souhaitez que la commande soit traitées sans vérifier l’applicabilité de chaque package.

Syntaxe :

Dism /Add-Package /PackagePath:<path_to_cabfile> [/IgnoreCheck] [/PreventPending]
  • /PackagePath peut pointer vers :

    • Un seul fichier .cab ou .msu.
    • Dossier qui contient un seul fichier .cab développé.
    • Dossier qui contient un seul fichier .msu.
    • Dossier qui contient plusieurs fichiers .cab ou .msu.
  • Si /PackagePath pointe vers un dossier qui contient des fichiers .cab ou .msu à la racine, tous les sous-dossiers sont également vérifiés de manière récursive pour les fichiers .cab et .msu.

  • Utilisez l’option /PreventPending pour ignorer l’installation du package si le package ou l’image Windows a des actions en ligne en attente.

Notes

/Add-Packagen’exécute pas une case activée complète pour l’applicabilité et les dépendances d’un package :

  • Si vous ajoutez un package avec des dépendances, assurez-vous que toutes les dépendances sont installées lorsque vous ajoutez le package.
  • Si vous ajoutez un fichier .msu, veillez à case activée la base de connaissances associée pour obtenir des instructions d’installation spécifiques au package.

Exemples :

Dism /Image:C:\test\offline /LogPath:AddPackage.log /Add-Package /PackagePath:C:\packages\package.msu
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab /IgnoreCheck
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\test\packages\package.cab /PreventPending

/Remove-Package

Supprime un package de fichiers .cab spécifié de l’image. Seuls .cab fichiers peuvent être spécifiés. Vous ne pouvez pas utiliser cette commande pour supprimer les fichiers .msu.

Notes

L’utilisation de cette commande pour supprimer un package d’une image hors connexion ne réduit pas la taille de l’image.

Syntaxe :

/Remove-Package {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}
  • Utilisez /PackagePath pour pointer vers la source d’origine du package, spécifier le chemin d’accès au fichier CAB ou pour spécifier le package par son nom, car il est répertorié dans l’image. Utilisez l’option /Get-Packages pour rechercher le nom du package dans l’image.

Exemples :

Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 /PackageName:Microsoft-Windows-MediaPlayer-Package~31bf3856ad364e35~x86~~6.1.6801.0
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab

/Get-Features

Affiche des informations de base sur toutes les fonctionnalités (composants du système d’exploitation qui incluent des fonctionnalités De base Windows facultatives) dans un package.

Syntaxe :

/Get-Features {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>} [/Format:{Table | List}]
  • /Get-Features recherche le nom des packages dans l’image ou dans la source d’origine du package. Si vous ne spécifiez pas de nom de package ou de chemin d’accès, toutes les fonctionnalités de l’image seront répertoriées.
  • /PackageName est un package dans une image. Vous pouvez utiliser /DISM Get-Packages pour afficher les noms de package dans une image.
  • /PackagePath peut pointer vers un fichier .cab ou un dossier.

Utilisez l’argument /Format:Table ou /Format:List pour afficher la sortie sous forme de table ou de liste.

Exemples :

Dism /Image:C:\test\offline /Get-Features
Dism /Image:C:\test\offline /Get-Features /Format:List
Dism /Image:C:\test\offline /Get-Features /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
Dism /Image:C:\test\offline /Get-Features /PackagePath:C:\packages\package1.cab

/Get-FeatureInfo

Affiche des informations détaillées sur une fonctionnalité. Vous devez utiliser /FeatureName. Vous pouvez utiliser l’option /Get-Features pour rechercher le nom de la fonctionnalité dans l’image.

Syntaxe :

/Get-FeatureInfo /FeatureName:<name_in_image> [{/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}]

/PackageName et /PackagePath sont facultatifs et peuvent être utilisés pour rechercher une fonctionnalité spécifique dans un package.

Exemples :

Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts
Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts /PackagePath:C:\packages\package.cab

/Enable-Feature

Active ou met à jour la fonctionnalité spécifiée dans l’image. Vous devez utiliser l’option /FeatureName . Utilisez l’option /Get-Features pour rechercher le nom de la fonctionnalité dans l’image.

Syntaxe :

/Enable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Source: <source>] [/LimitAccess] [/All]

Vous pouvez spécifier l’option /FeatureName plusieurs fois dans une ligne de commande pour les fonctionnalités qui partagent le même package parent.

Vous n’avez pas besoin de spécifier le nom du package à l’aide de l’option /PackageName si le package est un package Windows Foundation. Sinon, utilisez /PackageName pour spécifier le package parent de la fonctionnalité.

Vous pouvez restaurer et activer une fonctionnalité qui a déjà été supprimée de l’image. Utilisez l’argument /Source pour spécifier l’emplacement des fichiers requis pour restaurer la fonctionnalité. La source des fichiers peut par le dossier Windows dans une image montée, par exemple c:\test\mount\Windows. Vous pouvez également utiliser un dossier Windows côte à côte comme source des fichiers, par exemple z:\sources\SxS.

Si vous spécifiez plusieurs arguments /Source, les fichiers sont collectés à partir du premier emplacement où ils sont trouvés et les autres emplacements sont ignorés. Si vous ne spécifiez pas de /Source pour une fonctionnalité qui a été supprimée, l’emplacement par défaut dans le Registre est utilisé ou, pour les images en ligne, Windows Update (WU) est utilisé.

  • Utilisez /LimitAccess pour empêcher DISM de contacter WU pour les images en ligne.
  • Utilisez /All pour activer toutes les fonctionnalités parentes de la fonctionnalité spécifiée.

Exemples :

Dism /Online /Enable-Feature /FeatureName:Hearts /All
Dism /Online /Enable-Feature /FeatureName:Calc /Source:c:\test\mount\Windows /LimitAccess
Dism /Image:C:\test\offline /Enable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Disable-Feature

Désactive la fonctionnalité spécifiée dans l’image. Vous devez utiliser l’option /FeatureName. Utilisez l’option /Get-Features pour rechercher le nom de la fonctionnalité dans l’image.

Syntaxe :

/Disable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Remove]

Vous pouvez spécifier /FeatureName plusieurs fois dans une ligne de commande pour les fonctionnalités du même package parent.

Vous n’avez pas besoin de spécifier le nom du package à l’aide de l’option /PackageName s’il s’agit d’un package Windows Foundation. Sinon, utilisez /PackageName pour spécifier le package parent de la fonctionnalité.

Utilisez /Remove pour supprimer une fonctionnalité sans supprimer le manifeste de la fonctionnalité de l’image. La fonctionnalité est répertoriée comme « Supprimée » lorsque vous utilisez /Get-FeatureInfo pour afficher les détails de la fonctionnalité et peut être restaurée et activée à l’aide de /Enable-Feature avec l’option /Source.

Exemples :

*Dism /Online /Disable-Feature /FeatureName:Hearts
Dism /Image:C:\test\offline /Disable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0

/Cleanup-Image

Effectue des opérations de nettoyage ou de récupération sur l’image. /AnalyzeComponentStoreet /ResetBase peuvent être utilisés avec des images Windows 10, Windows 8.1 et Windows PE supérieures à 5.0. À compter de Windows 10, version 1607, vous pouvez spécifier /Defer avec /ResetBase, mais vous ne devez utiliser /Defer que comme option dans la fabrique où DISM /Resetbase l’opération nécessite plus de 30 minutes.

Conseil

Pour déterminer quand l’option /ResetBase a été exécutée pour la dernière fois, case activée l’entrée de Registre LastResetBase_UTC sous le chemin du HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing Registre.

Syntaxe :

/Cleanup-Image {/RevertPendingActions | /SPSuperseded [/HideSP] | /StartComponentCleanup [/ResetBase [/Defer]] | /AnalyzeComponentStore | /CheckHealth | /ScanHealth | /RestoreHealth [/Source: <filepath>] [/LimitAccess]}
Paramètre Description
/RevertPendingActions Si vous rencontrez un échec de démarrage, vous pouvez utiliser l’option /RevertPendingActions pour essayer de récupérer le système. L’opération rétablit toutes les actions en attente des opérations de maintenance précédentes, car ces actions peuvent être à l’origine de l’échec de démarrage. L’option /RevertPendingActions n’est pas prise en charge sur un système d’exploitation en cours d’exécution ou une image Windows PE ou Windows Recovery Environment (Windows RE). Important : vous devez utiliser l’option /RevertPendingActions uniquement dans un scénario de récupération système sur une image Windows qui n’a pas démarré.
SPSuperseded Supprime tous les fichiers de sauvegarde créés lors de l’installation d’un Service Pack. Utilisez /HideSP pour empêcher la liste du Service Pack dans le Mises à jour Panneau de configuration Installé. Impossible de désinstaller le Service Pack une fois l’opération /SPSuperseded terminée.
/StartComponentCleanup Nettoie les composants remplacés et réduit la taille du magasin de composants. Utilisez /ResetBase pour réinitialiser la base des composants remplacés, ce qui peut réduire davantage la taille du magasin de composants. Les mises à jour Windows installées ne peuvent pas être désinstallées après l’exécution de /StartComponentCleanup avec l’option /ResetBase. Utilisez /Defer avec /ResetBase pour différer les opérations de nettoyage de longue durée à la maintenance automatique suivante.
/AnalyzeComponentStore Crée un rapport du magasin de composants. Pour plus d’informations sur le rapport et sur l’utilisation des informations fournies dans le rapport, consultez Déterminer la taille réelle du dossier WinSxS.
/CheckHealth Vérifie si l’image a été marquée comme endommagée par un processus ayant échoué et si l’altération peut être réparée.
/ScanHealth Analyse l’image pour détecter l’altération du magasin de composants. Cette opération prendra plusieurs minutes.
/RestoreHealth Analyse l’image pour détecter l’altération du magasin de composants, puis effectue automatiquement les opérations de réparation. Cette opération prendra plusieurs minutes.
/Source Utilisé avec /RestoreHealth pour spécifier l’emplacement des versions correctes connues des fichiers qui peuvent être utilisées pour la réparation, par exemple un chemin d’accès au répertoire Windows d’une image montée.
/LimitAccess Empêche DISM de contacter Windows Update pour la réparation des images en ligne.

Exemples :

Dism /Image:C:\test\offline /Cleanup-Image /RevertPendingActions
Dism /Image:C:\test\offline /Cleanup-Image /SPSuperseded /HideSP
Dism /Online /Cleanup-Image /ScanHealth
Dism /Online /Cleanup-Image /RestoreHealth /Source:c:\test\mount\windows /LimitAccess

Pour plus d’informations, consultez Réparer une image Windows.

Limites

  • Lorsque vous installez un package dans une image hors connexion, l’état du package est « Installer en attente » en raison des actions en ligne en attente. En d’autres termes, le package est installé lorsque l’image est démarrée et que les actions en ligne sont traitées. Si des actions suivantes sont demandées, elles ne peuvent pas être traitées tant que l’action en ligne en attente précédente n’est pas terminée. Vous pouvez utiliser l’option /PreventPending lorsque vous ajoutez un package avec /AddPackage pour ignorer l’installation d’un package en cas d’actions en ligne en attente.
  • Certains packages nécessitent que d’autres packages soient installés en premier. Vous ne devez pas supposer que les dépendances seront satisfaites. Si un package a des exigences de dépendance, utilisez un fichier de réponses pour installer les packages nécessaires. En passant un fichier de réponses à DISM, plusieurs packages peuvent être installés dans le bon ordre. Pour plus d’informations, consultez Ajouter ou supprimer des packages hors connexion à l’aide de DISM.
  • Les packages sont installés dans l’ordre dans lequel ils sont répertoriés dans la ligne de commande.
  • Lorsque vous utilisez DISM pour répertorier les composants facultatifs dans une image Windows PE, les composants facultatifs sont toujours répertoriés comme étant en attente même lorsque l’opération de maintenance a réussi. Cette opération est par défaut et ne nécessite aucune action supplémentaire.

Qu’est-ce que DISM ?

Options de ligne de commande de la gestion des images DISM

Options de ligne de commande de Gestion et maintenance des images de déploiement (DISM)