Dans RD Web sur Windows Server 2012 R2, certaines RemoteApp « disparaissent » lorsqu’on les minimise : plus d’icône dans la zone de notification et impossible de restaurer. Voici les causes, les correctifs éprouvés et une méthode de déploiement fiable.
Vue d’ensemble du problème
Vous publiez une application via Remote Desktop Web Access (RD Web) et elle se comporte normalement en local : quand on la minimise, elle se replie dans la zone de notification (System Tray, « systray »). En RemoteApp toutefois, l’icône disparaît totalement une fois l’appli minimisée, et l’utilisateur ne peut plus la restaurer ni depuis la barre des tâches, ni via Alt+Tab. Pourtant, dans le Gestionnaire des tâches de la session distante, le processus est bien présent.
Ce comportement est typique des environnements RD Web / RemoteApp hébergés sur Windows Server 2012 R2 et clients Windows 10/11, lorsque certaines optimisations du client RDP empêchent l’application minimisée d’actualiser son « conteneur » graphique utilisé pour exposer une icône dans le systray local.
Pourquoi cela arrive
RemoteApp encapsule les fenêtres distantes et les « projette » sur le bureau local au travers du client RDP. Lorsqu’une fenêtre est minimisée, le client peut supprimer (suppress) son rafraîchissement pour économiser des ressources. Dans certains cas, ce mécanisme empêche l’application distante de signaler correctement son icône de notification au système local : de fait, l’icône n’apparaît pas, et l’utilisateur perd l’accès à la commande de restauration fournie par cette icône.
Heureusement, le client RDP propose un commutateur de registre qui neutralise cette suppression lorsqu’une application est minimisée, ce qui restaure l’apparition de l’icône dans la zone de notification locale.
Réponses & solutions (vue rapide)
Étape | Action | Effet recherché |
---|---|---|
1. | Vérifier la configuration RDS (rôle Remote Desktop Web Access installé, collections RemoteApp correctement publiées). | S’assurer qu’aucun paramètre serveur ne bloque l’affichage des icônes RemoteApp. |
2. | Ajouter/modifier la clé registre côté client :HKLM\SOFTWARE\Microsoft\Terminal Server Client → RemoteDesktop_SuppressWhenMinimized = 2 (DWORD). | Empêche le client RDP de « mettre en veille » l’appli lorsqu’elle est minimisée, autorisant l’apparition de l’icône dans le systray local. |
3. | Mettre à jour le client RDP (MSTSC ou MSRDC) sur chaque poste. | Les versions récentes corrigent des bugs d’affichage RemoteApp et gèrent mieux les icônes de la zone de notification. |
4. | Installer les derniers correctifs Windows (serveur et client). | Plusieurs mises à jour cumulatives résolvent des pertes d’icônes RemoteApp. |
Diagnostic guidé
Avant d’appliquer les correctifs, validez le diagnostic à l’aide de ce parcours en trois questions.
- Le processus distant tourne-t-il toujours ? Ouvrez le Gestionnaire des tâches dans la session distante (via le bureau complet publié ou en vous connectant sur l’hôte de session) et vérifiez que l’exécutable de l’application est actif.
- L’icône est-elle simplement masquée ? Sur le poste client, développez le chevron de la zone de notification (^) et vérifiez si l’icône s’y trouve. Dans Paramètres > Personnalisation > Barre des tâches > Zone de notification, forcez l’affichage de l’icône si nécessaire.
- Le phénomène est-il spécifique à RemoteApp ? Testez la même application en bureau distant complet. Si l’icône apparaît correctement dans ce mode mais pas en RemoteApp, le problème relève du client RDP/RemoteApp et non de l’application elle-même.
Comprendre la clé RemoteDesktop_SuppressWhenMinimized
Cette valeur (DWORD) influence la manière dont le client RDP traite les fenêtres minimisées :
- Absente ou valeur par défaut : le client peut supprimer le rendu d’une fenêtre minimisée.
- Valeur =
2
: le client n’éteint pas le rendu lorsqu’une fenêtre est minimisée. Les composants de notification ont donc l’opportunité de se manifester correctement côté client.
Dans un contexte RemoteApp, passer la valeur à 2
élimine fréquemment le symptôme d’icône introuvable dans le systray local.
Procédure détaillée côté client
Ajout manuel de la clé de registre
Prérequis : sauvegardez le registre ou créez un point de restauration système. L’opération requiert des droits administrateur.
- Ouvrez Regedit.exe.
- Accédez à
HKLM\SOFTWARE\Microsoft\Terminal Server Client
. Créez la clé si elle n’existe pas. - Créez ou modifiez la valeur
DWORD
nomméeRemoteDesktop_SuppressWhenMinimized
et affectez2
. - Redémarrez le poste ou, a minima, fermez toutes les sessions RDP et relancez le client.
Via ligne de commande
Exécutez en Invite de commandes (Admin) :
reg add "HKLM\SOFTWARE\Microsoft\Terminal Server Client" ^
/v RemoteDesktop_SuppressWhenMinimized /t REG_DWORD /d 2 /f
Pour couvrir également les applications clientes 32 bits sur un OS 64 bits, ajoutez :
reg add "HKLM\SOFTWARE\WOW6432Node\Microsoft\Terminal Server Client" ^
/v RemoteDesktop_SuppressWhenMinimized /t REG_DWORD /d 2 /f
Via PowerShell (local ou à distance)
$paths = @(
"HKLM:\SOFTWARE\Microsoft\Terminal Server Client",
"HKLM:\SOFTWARE\WOW6432Node\Microsoft\Terminal Server Client"
)
foreach($p in $paths){
if(-not (Test-Path $p)){ New-Item -Path $p -Force | Out-Null }
New-ItemProperty -Path $p -Name "RemoteDesktop_SuppressWhenMinimized" -PropertyType DWord -Value 2 -Force | Out-Null
}
Write-Host "Clé appliquée. Un redémarrage est recommandé."
Revenir en arrière : supprimez la valeur pour revenir au comportement par défaut.
Déploiement à l’échelle (AD DS / Intune)
- GPO – Préférences Registre : Configuration ordinateur > Préférences > Paramètres Windows > Registre → créez une valeur REG_DWORD
RemoteDesktop_SuppressWhenMinimized
=2
sous les deux chemins mentionnés ci-dessus. - Script de démarrage : utilisez le script PowerShell précédent comme Script de démarrage ordinateur.
- Intune / MDM : poussez une configuration de clé de registre via un script Win32 (remédiation) si votre MDM ne prend pas directement le Registre.
Contrôles côté serveur
Assurez-vous que l’infrastructure RDS fonctionne sans avertissements :
- Rôles : RD Web Access, RD Connection Broker, RD Session Host, (optionnel : RD Gateway) correctement installés.
- Collections : la RemoteApp est publiée dans une collection valide, avec le type d’expériences utilisateur attendu (redirections, presse-papiers, imprimantes…).
- Profils : si vous utilisez des profils itinérants ou User Profile Disks, vérifiez qu’aucune personnalisation ne bloque l’icône de l’appli.
Bien que la disparition d’icône soit majoritairement un problème côté client, l’application d’updates serveur reste indispensable pour garantir la compatibilité RemoteApp (Stack RDS, shell, graphiques).
Tests de validation après correctifs
- Ouvrez la RemoteApp via RD Web ou via un flux RemoteApp sur le client.
- Vérifiez que l’icône s’affiche dans la zone de notification.
- Minimisez l’application et confirmez que l’icône demeure visible et réactive (clic ou double-clic).
- Fermez la session puis reconnectez-vous pour vérifier la persistance du réglage.
Informations complémentaires utiles
- Redémarrage obligatoire : après toute modification du registre ou mise à jour du client RDP, redémarrez le poste afin de prendre en compte les changements.
- Limite RemoteApp : certaines applications Win32 ne sont pas conçues pour exporter leur icône de notification en contexte RemoteApp. Dans ce cas :
- publiez un bureau complet au lieu d’une RemoteApp ; ou
- reconfigurez l’application pour conserver une petite fenêtre visible plutôt qu’un simple icône.
- Contournement rapide : depuis le Gestionnaire des tâches de la session distante ou la console Session Host, terminez puis relancez l’application, ou lancez une nouvelle instance.
Tableau causes → remèdes
Symptôme observé | Cause probable | Remède recommandé |
---|---|---|
Icône introuvable après minimisation | Suppression du rendu par le client RDP | Définir RemoteDesktop_SuppressWhenMinimized=2 côté client |
Icône présente mais masquée derrière le chevron | Paramétrage Windows du systray | Forcer « Toujours afficher toutes les icônes » pour l’appli |
Comportement correct en bureau complet, défaillant en RemoteApp | Encapsulation RemoteApp incompatible/ancienne version client | Mettre à jour MSTSC/MSRDC et Windows sur le poste |
Icône apparaît puis disparaît aléatoirement | Application non conçue pour RemoteApp ou conditions de timing | Publier un bureau complet ou désactiver la réduction au systray |
Bonnes pratiques de déploiement en entreprise
Action | Détails | Impact |
---|---|---|
Déploiement par GPO – Préférences Registre | Créez la valeur DWORD dans HKLM (32/64 bits) | Uniformise le comportement sans packager l’appli |
Script de remédiation | Exécute un PowerShell réappliquant la clé si manquante | Résilience face aux réinstallations de poste |
Vérification de version MSTSC/MSRDC | Contrôlez la version de mstsc.exe ou du client RD | Évite des bugs corrigés en versions récentes |
Plan de test | Scénarios « ouvrir > minimiser > restaurer » + multi-session | Qualifie toutes les combinaisons appli/poste |
Vérifications rapides côté client
- Paramètres d’affichage : testez en écran unique et en multi-écrans.
- Stratégies d’alimentation : évitez les profils d’économie extrêmes qui mettent en veille le GPU.
- Extensions shell : certaines optimisations tierces de la barre des tâches perturbent les icônes de RemoteApp. Testez sans ces utilitaires.
Exemples d’automatisation
Modèle .REG à intégrer à une image ou un script
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Terminal Server Client]
"RemoteDesktop_SuppressWhenMinimized"=dword:00000002
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Terminal Server Client]
"RemoteDesktop_SuppressWhenMinimized"=dword:00000002
Détection/Remédiation PowerShell avec journalisation
$log = "$env:ProgramData\RDWeb-Fix\rdp_systray_fix.log"
New-Item (Split-Path $log) -ItemType Directory -Force | Out-Null
function Set-RdpSuppress {
param([string]$Path)
if(-not (Test-Path $Path)){ New-Item -Path $Path -Force | Out-Null }
$v = Get-ItemProperty -Path $Path -Name RemoteDesktop_SuppressWhenMinimized -ErrorAction SilentlyContinue
if(-not $v -or $v.RemoteDesktop_SuppressWhenMinimized -ne 2){
New-ItemProperty -Path $Path -Name RemoteDesktop_SuppressWhenMinimized -PropertyType Dword -Value 2 -Force | Out-Null
Add-Content -Path $log -Value "$(Get-Date -Format s) :: Set 2 in $Path"
} else {
Add-Content -Path $log -Value "$(Get-Date -Format s) :: Already 2 in $Path"
}
}
"HKLM:\SOFTWARE\Microsoft\Terminal Server Client","HKLM:\SOFTWARE\WOW6432Node\Microsoft\Terminal Server Client" | ForEach-Object { Set-RdpSuppress $_ }
Write-Host "Remédiation appliquée. Redémarrer le poste pour valider."
Questions fréquentes
Ce réglage a-t-il un coût en performances ?
Oui, léger : ne plus « supprimer » le rendu d’une fenêtre minimisée peut augmenter marginalement l’utilisation CPU/GPU réseau du client. Dans la pratique, l’impact est négligeable pour des applis métier classiques.
Le correctif est-il sûr ?
Oui. Il agit uniquement sur le comportement d’optimisation du client RDP. Conservez toutefois une politique de mises à jour régulières (Windows et client RDP) pour bénéficier des meilleurs correctifs RemoteApp.
Le problème touche-t-il toutes les applis ?
Non. Les applications qui gèrent leur icône de notification de manière non standard peuvent être plus sensibles au contexte RemoteApp. Si le symptôme persiste malgré la clé de registre, publiez un bureau complet ou reconfigurez l’application pour éviter la « réduction au systray ».
Mac ou Linux clients ?
La clé de registre présentée est spécifique au client RDP Windows. Les clients autres plateformes ont leur propre logique et ne sont pas concernés par ce paramètre précis.
Checklist de résolution
- ✅ L’infrastructure RDS est saine (rôles, collections, publication).
- ✅ La valeur
RemoteDesktop_SuppressWhenMinimized=2
est présente dansHKLM
(32/64 bits). - ✅ Le client RDP (MSTSC/MSRDC) est à jour.
- ✅ Les mises à jour Windows sont appliquées côté serveur et côté client.
- ✅ L’icône apparaît et reste fonctionnelle après minimisation.
Procédures de secours
- Rouvrir l’application : via le Gestionnaire des tâches de la session distante (ou une console sur l’hôte), terminez le processus puis relancez l’appli.
- Fournir un raccourci de restauration : si l’application le permet, un paramètre en ligne de commande peut forcer la restauration de la fenêtre principale.
- Basculer en « bureau publié » : dernier recours si l’icône n’est jamais exportée de façon fiable en RemoteApp.
Résumé opérationnel
Le symptôme d’application minimisée introuvable dans une session RD Web/RemoteApp sur Windows Server 2012 R2 est généralement lié au comportement d’optimisation du client RDP. Le correctif le plus efficace et le plus rapide consiste à forcer la valeur RemoteDesktop_SuppressWhenMinimized=2
côté client, à maintenir le client RDP à jour, puis à valider via un plan de tests simple minimisation/restauration. En complément, conservez une posture d’updates régulières et ayez un plan B (bureau complet) pour les rares applications qui n’exportent pas correctement leur icône de notification.
Annexe : pas à pas condensé
- Vérifiez la publication RemoteApp et les rôles RDS (RD Web Access, Broker, Session Host).
- Sur un poste test, appliquez la clé de registre (32/64 bits) à
2
. - Installez les dernières mises à jour Windows et la version la plus récente du client RDP.
- Redémarrez le poste, connectez-vous à la RemoteApp, minimisez, contrôlez l’icône.
- Déployez à l’échelle via GPO/MDM, puis surveillez via un script de remédiation.
Notes de sécurité et de support
- Toute modification du registre doit être testée dans un environnement pilote avant déploiement global.
- Conservez une sauvegarde du registre ou un point de restauration système.
- Documentez le changement (qui, quoi, quand, pourquoi) pour vos audits internes.
En appliquant ce guide, vous éliminez la « disparition » des RemoteApp minimisées et vous rétablissez une expérience utilisateur prévisible, conforme à celle d’une application locale.