Aller au contenuAller à l'arborescence
  1. C:
  2. ProgramData
  3. Package Cache
DossierRisque : Prudence

Package Cache C:\ProgramData\Package Cache

Cache d'installeurs (MSI, EXE) conservés par les programmes d'installation de type Burn (Visual C++, .NET, Visual Studio) pour réparer et désinstaller.

Mis à jour le Par AltF4 Formation

À quoi ça sert

Package Cache est le cache de paquets de Burn, le moteur d’installation de Visual Studio, des redistribuables Visual C++ et de nombreux composants Microsoft. Burn y garde l’installeur d’origine de chaque produit pour que la réparation, la mise à jour et la désinstallation n’aient pas à redemander le média. C’est pourquoi on y retrouve des dizaines de gigaoctets de .exe et de .msi sur un poste de développement.

Ce qu’il contient

  • Un dossier par programme d’installation (bundle), nommé par GUID ({...}) ou par identifiant suivi de la version ({...}v<version>).
  • Dans chaque dossier : l’installeur d’origine (.exe ou .msi) et ses charges utiles (payloads). Aucune donnée utilisateur.
  • Le chemin du cache d’un bundle est enregistré dans le Registre, sous sa clé de désinstallation (BundleCachePath).
  • Les installations par utilisateur ont leur propre cache dans %LOCALAPPDATA%\Package Cache.

Risques et bonnes pratiques

  • Ne purgez pas ce dossier. Sans lui, la réparation, la mise à jour ou la désinstallation d’un produit échoue en réclamant le média d’origine.
  • Ne le déplacez pas non plus : ce n’est pas pris en charge et peut laisser les produits dans un état corrompu.
  • Pour récupérer de la place, désinstallez les produits devenus inutiles (anciennes versions de Visual Studio, de Visual C++), la copie en cache disparaît avec eux.
  • Si le cache d’un produit est abîmé, réparez ou réinstallez ce produit depuis son installeur.

Commandes utiles

Fenêtre de terminal
# Les installeurs les plus gros du cache
Get-ChildItem "$env:ProgramData\Package Cache" -Recurse -File -Force -Include *.msi, *.exe -ErrorAction SilentlyContinue |
Sort-Object Length -Descending | Select-Object -First 15 FullName, Length
# Produits installés qui dépendent de ce cache (clés de désinstallation 64 bits)
Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*" |
Where-Object { $_.BundleCachePath } | Select-Object DisplayName, BundleCachePath

Signaler une erreur