PowerShell - Microsoft Edge - Ouvrir et afficher une page web en plein écran
📌 Introduction
Bonjour à tous ! Voici un petit article pour partager un script PowerShell qui permet de lancer une page web dans Microsoft Edge et de l'afficher automatiquement en plein écran (mode kiosque), sans interaction utilisateur.
Ce type de script est particulièrement utile dans les contextes suivants :
- Affichage d'un dashboard sur un écran de supervision
- Borne d'information ou écran kiosque en entreprise
- Affichage automatique d'une page de statut au démarrage d'un poste
- Présentation en salle de réunion sans manipulation manuelle
📄 Le script
Le principe est simple : on lance Edge sur l'URL cible, on attend qu'il soit chargé, on l'active en premier plan, puis on envoie la touche F11 pour passer en plein écran.
# ── Ouvrir Microsoft Edge sur l'URL cible ────────────────────────────────────
Start-Process microsoft-edge:https://delacourt.ovh
# ── Créer un objet WScript.Shell pour simuler des touches clavier ─────────────
$wshell = New-Object -ComObject wscript.shell
# ── Attendre qu'Edge soit chargé et l'activer en premier plan ─────────────────
Start-Sleep -Seconds 2
$wshell.AppActivate('Google - Microsoft Edge')
# ── Envoyer F11 pour passer en plein écran ───────────────────────────────────
Start-Sleep -Seconds 1
$wshell.SendKeys('{F11}')
🔍 Explication ligne par ligne
| Ligne | Rôle |
|---|---|
Start-Process microsoft-edge:https://... |
Lance Edge directement sur l'URL via le protocole URI microsoft-edge: |
New-Object -ComObject wscript.shell |
Crée un objet COM Windows Script Host pour interagir avec le bureau |
Start-Sleep -Seconds 2 |
Laisse le temps à Edge de démarrer et charger la page |
$wshell.AppActivate('...') |
Met la fenêtre Edge au premier plan (nécessaire avant d'envoyer des touches) |
$wshell.SendKeys('{F11}') |
Simule l'appui sur F11 pour basculer en plein écran |
AppActivate() doit correspondre
au titre exact de la fenêtre Edge. Ce titre varie selon la page chargée.
Par exemple, si votre page s'appelle "Mon Dashboard", utilisez
$wshell.AppActivate('Mon Dashboard - Microsoft Edge').
⚙️ Version améliorée — avec détection du titre de fenêtre
Pour éviter les problèmes liés au titre de la fenêtre, voici une version plus robuste qui recherche la fenêtre Edge automatiquement :
# ── Configuration ────────────────────────────────────────────────────────────
$url = "https://delacourt.ovh"
$delaiCharge = 4 # secondes d'attente avant d'envoyer F11
# ── Lancer Edge sur l'URL cible ───────────────────────────────────────────────
Write-Output "Lancement de Microsoft Edge sur : $url"
Start-Process "microsoft-edge:$url"
# ── Attendre le chargement ────────────────────────────────────────────────────
Write-Output "Attente de $delaiCharge secondes..."
Start-Sleep -Seconds $delaiCharge
# ── Créer l'objet WScript.Shell ───────────────────────────────────────────────
$wshell = New-Object -ComObject wscript.shell
# ── Chercher la fenêtre Edge parmi les processus actifs ───────────────────────
$edgeProcess = Get-Process -Name "msedge" -ErrorAction SilentlyContinue |
Where-Object { $_.MainWindowTitle -ne "" } |
Select-Object -First 1
if ($edgeProcess) {
$windowTitle = $edgeProcess.MainWindowTitle
Write-Output "Fenêtre détectée : $windowTitle"
# Activer la fenêtre Edge
$wshell.AppActivate($windowTitle)
Start-Sleep -Milliseconds 500
# Envoyer F11 pour plein écran
$wshell.SendKeys('{F11}')
Write-Output "✅ Plein écran activé."
} else {
Write-Warning "❌ Aucune fenêtre Edge détectée. Vérifiez qu'Edge est bien lancé."
}
shell:startup) ou configurez-le via une GPO avec un script de démarrage de session.
🖥️ Alternative — Mode kiosque natif d'Edge
Microsoft Edge propose un mode kiosque natif qui est encore plus adapté pour les bornes d'affichage, car il désactive la barre d'adresse, les menus et empêche toute navigation hors de la page définie :
# ── Mode kiosque natif Microsoft Edge ────────────────────────────────────────
# --kiosk : active le mode kiosque
# --edge-kiosk-type=fullscreen : plein écran sans barre de navigation
# --no-first-run : désactive l'assistant de premier lancement
$url = "https://delacourt.ovh"
$edgePath = "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
Start-Process -FilePath $edgePath -ArgumentList @(
"--kiosk $url",
"--edge-kiosk-type=fullscreen",
"--no-first-run",
"--disable-infobars",
"--disable-session-crashed-bubble"
)
| Paramètre | Effet |
|---|---|
--kiosk |
Active le mode kiosque |
--edge-kiosk-type=fullscreen |
Plein écran total sans barre de navigation |
--no-first-run |
Supprime l'assistant de bienvenue au premier lancement |
--disable-infobars |
Masque les barres d'information Edge |
--disable-session-crashed-bubble |
Supprime le popup de récupération après crash |
✅ Conclusion
Ces deux approches sont complémentaires : le script SendKeys + F11 est idéal
pour un usage ponctuel et rapide, tandis que le mode kiosque natif d'Edge
est recommandé pour un déploiement en production sur des bornes ou des écrans d'affichage dynamique.
💬 Vous utilisez Edge en mode kiosque dans votre infrastructure ? Partagez vos retours en commentaires !

Commentaires
Enregistrer un commentaire