Exécuter ces programmes à l’ouverture de session utilisateur
Vérifié avec Windows 11 25H2 — mis à jour le 30 juillet 2026
Pris en charge sur : Au minimum Windows 2000
Chemin dans la console GPO
Configuration utilisateur\Modèles d'administration\Système\Ouverture de session Description
Ce paramètre de stratégie spécifie les programmes ou les documents supplémentaires démarrés automatiquement par Windows lorsqu’un utilisateur ouvre une session sur le système. Si vous activez ce paramètre de stratégie, vous pouvez spécifier les programmes autorisés à s’exécuter au moment où l’utilisateur se connecte à l’ordinateur où ce paramètre de stratégie est appliqué. Pour spécifier des valeurs pour ce paramètre de stratégie, cliquez sur Afficher. Dans la boîte de dialogue Afficher le contenu, dans la colonne Valeur, tapez le nom du programme exécutable (.exe) ou du document. Pour spécifier un autre nom, appuyez sur Entrée, puis tapez le nom. Si le fichier ne se trouve pas dans le répertoire %Systemroot%, vous devez spécifier le chemin d’accès complet du fichier. Si vous désactivez ce paramètre de stratégie ou si vous ne le configurez pas, l’utilisateur doit démarrer les programmes appropriés après l’ouverture de session. Remarque : ce paramètre apparaît dans les dossiers Configuration ordinateur et Configuration utilisateur. Si les deux paramètres sont configurés, le système démarre les programmes spécifiés dans le paramètre Configuration ordinateur avant de démarrer ceux spécifiés dans le paramètre Configuration utilisateur. Consultez également les paramètres « Ne pas traiter la liste d’exécution héritée » et « Ne pas traiter la liste d’exécution unique ».
Registre
Software\Microsoft\Windows\CurrentVersion\Policies\Explorer MDM / Intune (CSP)
./User/Vendor/MSFT/Policy/Config/ADMX_Logon/Run_1 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: Exécuter ces programmes à l’ouverture de session utilisateur
; State: Enabled
; Supported on: Au minimum Windows 2000
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run]
; List values: enter one value per line in the builder UI. Autres formats (PowerShell, Intune, SCCM)
PowerShell
# Exported from gporais.com
# Policy: Exécuter ces programmes à l’ouverture de session utilisateur
# State: Enabled
# Supported on: Au minimum Windows 2000
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run'
New-Item -Path $path -Force | Out-Null
# List values: enter one value per line in the builder UI. Intune XML
OMA-URI: ./User/Vendor/MSFT/Policy/Config/ADMX_Logon/Run_1
Data type: String
Value:
<enabled/>
<!-- RunListBox1: enter one value per line before copying this XML payload. --> Intune Remediation
# === Detection script ===
# Exported from gporais.com
# Policy: Exécuter ces programmes à l’ouverture de session utilisateur
# State: Enabled
# Supported on: Au minimum Windows 2000
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
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
}
# HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run: List values: enter one value per line in the builder UI.
# No testable registry values are available for this state.
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Exécuter ces programmes à l’ouverture de session utilisateur
# State: Enabled
# Supported on: Au minimum Windows 2000
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run'
New-Item -Path $path -Force | Out-Null
# List values: enter one value per line in the builder UI. Scripts SCCM
# Exported from gporais.com
# Policy: Exécuter ces programmes à l’ouverture de session utilisateur
# State: Enabled
# Supported on: Au minimum Windows 2000
# 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: Exécuter ces programmes à l’ouverture de session utilisateur
# State: Enabled
# Supported on: Au minimum Windows 2000
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
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
}
# HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run: List values: enter one value per line in the builder UI.
# No testable registry values are available for this state.
Write-Output 'Non-compliant'
exit 1
# === Remediation script ===
# Exported from gporais.com
# Policy: Exécuter ces programmes à l’ouverture de session utilisateur
# State: Enabled
# Supported on: Au minimum Windows 2000
# Warning: In SYSTEM context (the Intune default), HKCU targets the SYSTEM profile. Run this script using the logged-on credentials.
$path = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run'
New-Item -Path $path -Force | Out-Null
# List values: enter one value per line in the builder UI. Vous construisez une collection multi-paramètres ? Ajoutez ce paramètre et générez des exports combinés (.reg, PowerShell, GPO).