Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
Vérifié avec Windows 11 25H2 — mis à jour le 30 juillet 2026
Pris en charge sur : Au minimum Windows Vista
Chemin dans la console GPO
Configuration ordinateur\Modèles d'administration\Composants Windows\Environnement distant Windows Description
Ce paramètre de stratégie configure la quantité totale maximale de mémoire (en méga-octets) pouvant être attribuée par un environnement distant actif et tous ses processus enfants. N’importe quelle valeur entre 0 et 0x7FFFFFFF peut être définie, où 0 indique une quantité de mémoire illimitée ; en d’autres termes, la capacité des opérations distantes à allouer de la mémoire n’est limitée que par la mémoire virtuelle disponible. Si vous activez ce paramètre de stratégie, l’opération distante est interrompue dès qu’une nouvelle attribution dépasse le quota spécifié. Si vous désactivez ce paramètre de stratégie ou ne le configurez pas, la valeur 150 est utilisée par défaut.
Registre
Software\Policies\Microsoft\Windows\WinRM\Service\WinRS MDM / Intune (CSP)
./Device/Vendor/MSFT/Policy/Config/RemoteShell/SpecifyMaxMemory 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: Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
; State: Enabled
; Supported on: Au minimum Windows Vista
[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WinRM\Service\WinRS]
"MaxMemoryPerShellMB"=dword:00000096 Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
# State: Enabled
# Supported on: Au minimum Windows Vista
$path = 'HKLM:\Software\Policies\Microsoft\Windows\WinRM\Service\WinRS'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'MaxMemoryPerShellMB' -Value 150 -Type DWord Intune XML
OMA-URI: ./Device/Vendor/MSFT/Policy/Config/RemoteShell/SpecifyMaxMemory
Data type: String
Value:
<enabled/>
<data id="MaxMemoryPerShellMB" value="150"/> Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
# State: Enabled
# Supported on: Au minimum Windows Vista
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\WinRM\Service\WinRS' -Name 'MaxMemoryPerShellMB' -Expected 150 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
# State: Enabled
# Supported on: Au minimum Windows Vista
$path = 'HKLM:\Software\Policies\Microsoft\Windows\WinRM\Service\WinRS'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'MaxMemoryPerShellMB' -Value 150 -Type DWord Scripts SCCM
# Exported from gporais.com
# Policy: Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
# State: Enabled
# Supported on: Au minimum Windows Vista
# 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: Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
# State: Enabled
# Supported on: Au minimum Windows Vista
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\WinRM\Service\WinRS' -Name 'MaxMemoryPerShellMB' -Expected 150 -Kind DWord)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Spécifier une quantité maximale de mémoire (en mégaoctets) par environnement
# State: Enabled
# Supported on: Au minimum Windows Vista
$path = 'HKLM:\Software\Policies\Microsoft\Windows\WinRM\Service\WinRS'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'MaxMemoryPerShellMB' -Value 150 -Type DWord Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).