Aller au contenuAller à l'arborescence
  1. C:
  2. Windows
  3. assembly
DossierRisque : Ne pas toucher

assembly C:\Windows\assembly

C:\Windows\assembly : Global Assembly Cache (GAC) historique du .NET Framework 1.x à 3.5. Celui du .NET Framework 4 est dans Microsoft.NET\assembly.

Mis à jour le Par AltF4 Formation

À quoi ça sert

Le Global Assembly Cache (GAC) est le cache de code partagé à l’échelle de la machine pour le Common Language Runtime. À partir du .NET Framework 4, son emplacement par défaut est %windir%\Microsoft.NET\assembly. Pour les versions 1.x à 3.5, c’est %windir%\assembly, c’est-à-dire ce dossier.

Ce qu’il contient

  • Les assemblies .NET partagés par plusieurs applications, pour les versions 1.x à 3.5 du .NET Framework.
  • Des sous-dossiers par type d’assembly (GAC_MSIL, GAC_32, GAC_64) et des dossiers NativeImages_v... qui contiennent les images natives générées par ngen.

Risques et bonnes pratiques

  • N’y copiez rien à la main. L’installation passe par un installateur ou par Gacutil.exe, un outil réservé au développement.
  • Supprimer un assembly partagé casse toutes les applications qui en dépendent. Réservez donc les droits de suppression aux administrateurs.
  • Pour une application en .NET Framework 4 ou plus récent, regardez %windir%\Microsoft.NET\assembly. Les versions .NET 6 et suivantes n’utilisent pas de GAC.

Commandes utiles

Fenêtre de terminal
# Sous-dossiers du GAC historique
Get-ChildItem "$env:windir\assembly" -Directory -Force | Select-Object Name
# GAC du .NET Framework 4 et suivants
Get-ChildItem "$env:windir\Microsoft.NET\assembly" -Directory -Force
Fenêtre de terminal
:: Depuis une invite de commandes développeur Visual Studio : lister les assemblies du GAC
gacutil -l

Signaler une erreur