Paramètres de configuration de la prise en charge DPI système par processus
Vérifié avec Windows 11 25H2 — mis à jour le 30 juillet 2026
Pris en charge sur : Windows Server 2016, Windows 10 version 1803 ou versions supérieures
Chemin dans la console GPO
Configuration ordinateur\Modèles d'administration\Système\Affichage Configuration utilisateur\Modèles d'administration\Système\Affichage Description
La résolution points par pouce du système par processus est une fonctionnalité de compatibilité des applications de bureau qui ne s'affichent pas correctement après un changement de facteur d'échelle d'affichage (PPP). Lorsque le facteur d'échelle d'affichage de l'écran principal change (ce qui peut se produire lorsque vous connectez ou déconnectez un écran ayant un facteur d'échelle d'affichage différent (PPP), que vous connectez à distance à partir d'un appareil ayant un autre facteur d'échelle d'affichage ou que vous modifiez manuellement le facteur d'échelle d'affichage), de nombreuses applications de bureau peuvent s'afficher de manière floue. Les applications de bureau qui n’ont pas été mises à jour pour s’afficher correctement dans ce scénario seront floues jusqu'à ce que l’utilisateur se déconnecte, puis revienne dans Windows. Lorsque vous activez cette stratégie, certaines applications floues seront nettes après leur redémarrage, sans que l'utilisateur ne doive se déconnecter puis se reconnecter à Windows. Prenez les éléments suivants en compte : La résolution points par pouce du système par processus de traitement améliorera uniquement le rendu des applications de bureau qui seront positionnées sur l'écran principal. Certaines applications de bureau peuvent encore être floues sur des écrans secondaires qui présentent un autre facteur de mise à l'échelle d'affichage. La résolution points par pouce du système par processus ne fonctionnera pas pour toutes les applications, puisque certaines applications de bureau plus anciennes seront toujours floues sur les écrans à haute résolution. Dans certains cas, vous pouvez observer un comportement étrange de certaines applications de bureau. Si cela se produit, la résolution points par pouce du système par processus doit être désactivée. L'activation de ce paramètre vous permet de spécifier la valeur par défaut à l'échelle du système des applications de bureau ainsi que les remplacements par application. Si vous désactivez ou ne configurez pas ce paramètre, la résolution points par pouce du système par processus ne s’applique à aucun processus du le système.
Registre
Software\Policies\Microsoft\Windows\Display Software\Policies\Microsoft\Windows\Display MDM / Intune (CSP)
./Device/Vendor/MSFT/Policy/Config/Display/DisablePerProcessDpiForApps Plusieurs correspondances CSP possibles ; la première a été retenue.
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. ⓘ
Appliquer les deux portées crée une configuration ambiguë (la portée ordinateur prévaut sur la portée utilisateur). Ne le faites que volontairement.
Fichier .reg
Windows Registry Editor Version 5.00
; Exported from gporais.com
; Policy: Paramètres de configuration de la prise en charge DPI système par processus
; State: Enabled
; Scope: Computer (HKLM)
; Supported on: Windows Server 2016, Windows 10 version 1803 ou versions supérieures
[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Display]
"EnablePerProcessSystemDPI"=dword:00000001
"EnablePerProcessSystemDPIForProcesses"=""
"DisablePerProcessSystemDPIForProcesses"="" Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Paramètres de configuration de la prise en charge DPI système par processus
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Windows Server 2016, Windows 10 version 1803 ou versions supérieures
$path = 'HKLM:\Software\Policies\Microsoft\Windows\Display'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'EnablePerProcessSystemDPI' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'EnablePerProcessSystemDPIForProcesses' -Value '' -Type String
Set-ItemProperty -Path $path -Name 'DisablePerProcessSystemDPIForProcesses' -Value '' -Type String Intune XML
OMA-URI: ./Device/Vendor/MSFT/Policy/Config/Display/DisablePerProcessDpiForApps
Data type: String
Value:
<enabled/>
<data id="DisplayGlobalPerProcessSystemDpiSettings" value="1"/>
<data id="DisplayEnablePerProcessSystemDpiSettings" value=""/>
<data id="DisplayDisablePerProcessSystemDpiSettings" value=""/> Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: Paramètres de configuration de la prise en charge DPI système par processus
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Windows Server 2016, Windows 10 version 1803 ou versions supérieures
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\Display' -Name 'EnablePerProcessSystemDPI' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKLM:\Software\Policies\Microsoft\Windows\Display' -Name 'EnablePerProcessSystemDPIForProcesses' -Expected '' -Kind String)
(Test-RegistryValue -Path 'HKLM:\Software\Policies\Microsoft\Windows\Display' -Name 'DisablePerProcessSystemDPIForProcesses' -Expected '' -Kind String)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Paramètres de configuration de la prise en charge DPI système par processus
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Windows Server 2016, Windows 10 version 1803 ou versions supérieures
$path = 'HKLM:\Software\Policies\Microsoft\Windows\Display'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'EnablePerProcessSystemDPI' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'EnablePerProcessSystemDPIForProcesses' -Value '' -Type String
Set-ItemProperty -Path $path -Name 'DisablePerProcessSystemDPIForProcesses' -Value '' -Type String Scripts SCCM
# Exported from gporais.com
# Policy: Paramètres de configuration de la prise en charge DPI système par processus
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Windows Server 2016, Windows 10 version 1803 ou versions supérieures
# 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: Paramètres de configuration de la prise en charge DPI système par processus
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Windows Server 2016, Windows 10 version 1803 ou versions supérieures
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\Display' -Name 'EnablePerProcessSystemDPI' -Expected 1 -Kind DWord)
(Test-RegistryValue -Path 'HKLM:\Software\Policies\Microsoft\Windows\Display' -Name 'EnablePerProcessSystemDPIForProcesses' -Expected '' -Kind String)
(Test-RegistryValue -Path 'HKLM:\Software\Policies\Microsoft\Windows\Display' -Name 'DisablePerProcessSystemDPIForProcesses' -Expected '' -Kind String)
)
if ($checks -notcontains $false) {
Write-Output 'Compliant'
exit 0
}
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Paramètres de configuration de la prise en charge DPI système par processus
# State: Enabled
# Scope: Computer (HKLM)
# Supported on: Windows Server 2016, Windows 10 version 1803 ou versions supérieures
$path = 'HKLM:\Software\Policies\Microsoft\Windows\Display'
New-Item -Path $path -Force | Out-Null
Set-ItemProperty -Path $path -Name 'EnablePerProcessSystemDPI' -Value 1 -Type DWord
Set-ItemProperty -Path $path -Name 'EnablePerProcessSystemDPIForProcesses' -Value '' -Type String
Set-ItemProperty -Path $path -Name 'DisablePerProcessSystemDPIForProcesses' -Value '' -Type String Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).