Contrôler la taille maximale du cache de fichiers de base
Vérifié avec Windows 11 25H2 — mis à jour le 30 juillet 2026
Pris en charge sur : Windows Installer version 3.0
Chemin dans la console GPO
Configuration ordinateur\Modèles d'administration\Composants Windows\Windows Installer Description
Cette stratégie contrôle le pourcentage d’espace disque disponible dans le cache des fichiers de base Windows Installer. Windows Installer utilise le cache des fichiers de base pour enregistrer les fichiers de base modifiés par les mises à jour de différences binaires. Le cache est utilisé pour récupérer le fichier de base pour les futures mises à jour. L’utilisateur n’est plus invité à indiquer l’emplacement du média source lorsque les nouvelles mises à jour sont appliquées. Si vous activez ce paramètre de stratégie, vous pouvez modifier la taille maximale du cache des fichiers de base Windows Installer. Si vous affectez la valeur 0 à la taille du cache des fichiers de base, Windows Installer cesse de remplir le cache des fichiers de base pour les nouvelles mises à jour. Les fichiers existants mis en cache restent sur le disque et sont supprimés en même temps que le produit. Si vous affectez la valeur 100 à la taille du cache des fichiers de base, Windows Installer utilise l’espace disque disponible pour le cache des fichiers de base. Si vous désactivez ce paramètre de stratégie ou si vous ne le configurez pas, Windows Installer utilise une valeur par défaut égale à 10 pour cent de la taille maximale du cache des fichiers de base.
Registre
Software\Policies\Microsoft\Windows\Installer MDM / Intune (CSP)
./Device/Vendor/MSFT/Policy/Config/ADMX_MSI/MSI_MaxPatchCacheSize Documentation Microsoft Learn Données de correspondance : Microsoft Learn (CC BY 4.0)
Générateur d'exports
BETAConfigurez l'état, la portée et les options, puis générez les sorties .reg, PowerShell, Intune et SCCM — ou ajoutez le paramètre à une collection multi-paramètres.
Ces exports écrivent le registre — ce n'est pas une GPO managée. ⓘ
Fichier .reg
Windows Registry Editor Version 5.00
; Exported from gporais.com
; Policy: Contrôler la taille maximale du cache de fichiers de base
; State: Enabled
; Supported on: Windows Installer version 3.0
[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer]
"MaxPatchCacheSize"=dword:0000000a Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Contrôler la taille maximale du cache de fichiers de base
# State: Enabled
# Supported on: Windows Installer version 3.0
$path = 'HKLM:\Software\Policies\Microsoft\Windows\Installer'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'MaxPatchCacheSize' -Value 10 -Type DWord Intune XML
OMA-URI: ./Device/Vendor/MSFT/Policy/Config/ADMX_MSI/MSI_MaxPatchCacheSize
Data type: String
Value:
<enabled/>
<data id="MSI_MaxPatchCacheSize" value="10"/> Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: Contrôler la taille maximale du cache de fichiers de base
# State: Enabled
# Supported on: Windows Installer version 3.0
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKLM:\Software\Policies\Microsoft\Windows\Installer' -Name 'MaxPatchCacheSize' -Expected 10 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Contrôler la taille maximale du cache de fichiers de base
# State: Enabled
# Supported on: Windows Installer version 3.0
$path = 'HKLM:\Software\Policies\Microsoft\Windows\Installer'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'MaxPatchCacheSize' -Value 10 -Type DWord Scripts SCCM
# Exported from gporais.com
# Policy: Contrôler la taille maximale du cache de fichiers de base
# State: Enabled
# Supported on: Windows Installer version 3.0
# SCCM Configuration Item guidance:
# Create a Configuration Item of type "Setting: Script".
# Discovery script: use the Detection script below.
# Remediation script: use the Remediation script below.
# Compliance rule: the Discovery script output equals 'Compliant'.
# === Detection script ===
# Exported from gporais.com
# Policy: Contrôler la taille maximale du cache de fichiers de base
# State: Enabled
# Supported on: Windows Installer version 3.0
function Test-RegistryValue {
param(
[Parameter(Mandatory = $true)][string]$Path,
[Parameter(Mandatory = $true)][string]$Name,
[object]$Expected,
[ValidateSet('String', 'DWord', 'MultiString')][string]$Kind = 'String',
[switch]$Absent
)
try {
$item = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction Stop
} catch {
return $Absent.IsPresent
}
if ($Absent.IsPresent) { return $false }
$actual = $item.$Name
if ($Kind -eq 'DWord') { return ([int64]$actual) -eq ([int64]$Expected) }
if ($Kind -eq 'MultiString') {
$actualValues = @($actual)
$expectedValues = @($Expected)
if ($actualValues.Count -ne $expectedValues.Count) { return $false }
for ($i = 0; $i -lt $expectedValues.Count; $i++) {
if ([string]$actualValues[$i] -ne [string]$expectedValues[$i]) { return $false }
}
return $true
}
return [string]$actual -eq [string]$Expected
}
$checks = @(
(Test-RegistryValue -Path 'HKLM:\Software\Policies\Microsoft\Windows\Installer' -Name 'MaxPatchCacheSize' -Expected 10 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Contrôler la taille maximale du cache de fichiers de base
# State: Enabled
# Supported on: Windows Installer version 3.0
$path = 'HKLM:\Software\Policies\Microsoft\Windows\Installer'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'MaxPatchCacheSize' -Value 10 -Type DWord Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).