PowerBgInfo : personnalisez le fond d’écran des serveurs avec PowerShell
Vous appréciez l’outil BgInfo de la suite SysInternals de Microsoft ? Alors, vous allez adorer PowerBgInfo. L’idée est la même : personnaliser le fond d’écran de Windows en affichant des informations sur le système local. Le gros plus : c’est un module PowerShell, ainsi vous pouvez afficher tout ce que vous souhaitez grâce à la puissance de PowerShell et au système de tuiles de PowerBgInfo.
PowerBgInfo est encore une pépite développée par Evotec IT, comme d’autres modules incontournables comme PsWriteHtml, GPOZaurr, et j’en passe. Il peut afficher des informations basiques sur le Bureau de votre serveur, comme le nom du système, l’OS, l’adresse IP ou encore le nom de l’utilisateur connecté. Il peut aussi afficher bien d’autres informations, selon vos besoins : il n’y a pas de réelle limite. L’avantage réside dans l’utilisation native de PowerShell : toute métrique récupérable par un script (via WMI, CIM, des fichiers locaux ou des requêtes réseau) peut être injectée dans l’interface graphique du fond d’écran via une surimpression sur l’image.
Sur l’exemple ci-dessous, j’affiche le statut des mises à jour Windows Update, l’état de l’espace de stockage, ou encore la charge CPU/RAM. Le principe est simple : vous récupérez l’information avec PowerShell, vous préparez la sortie (format attendu), vous l’associez à une tuile et PowerBgInfo va l’incruster sur le fond d’écran de la machine.

PowerBgInfo permet d’obtenir un résultat très propre et personnalisable. Il est possible de faire beaucoup plus simple (façon BgInfo), mais aussi encore plus complet grâce à l’incrustation de graphes, de statuts de services, etc… Vous pourrez trouver des exemples de code et de rendus sur le GitHub du projet PowerBgInfo.
Peu importe ce que vous décidez d’afficher, le principe reste le même : l’image finale est générée puis appliquée comme fond d’écran du bureau ou de l’écran de verrouillage (ou les deux). Il n’y a pas de service qui tourne en arrière-plan.
Sommaire
Prise en main complète de PowerBgInfo
Si vous désirez apprendre à utiliser PowerBgInfo, de l’installation à la conception d’un premier script, je vous invite à regarder ma vidéo YouTube. J’explique également comment déployer et configurer PowerBgInfo sur un ensemble de machines via une stratégie de groupe.
Retrouvez tous les scripts PowerShell sur GitHub :

Installation du module PowerBgInfo
Pour commencer à utiliser PowerBGInfo, vous devez installer le module sur votre machine Windows. La méthode la plus directe consiste à l’installer depuis la PowerShell Gallery à l’aide de la commande suivante :
Dans le cadre d’un déploiement automatisé sur un parc de serveurs ou de postes clients, je vous encourage à créer une copie locale du module avec la commande :
Cette méthode permet de stocker le module et ses dépendances dans un dossier local. Ensuite, déplacez ce dossier vers un partage, comme par exemple pour copier le module sur les postes où vous souhaitez l’utiliser (Robocopy est votre ami).
Créer un script PowerBgInfo
La force de PowerBGInfo réside dans le script PowerShell qui va orchestrer la collecte des données et la génération visuelle du fond d’écran. Ce script se divise généralement en trois sections distinctes.
1. La collecte des métriques système
À l’aide des cmdlets PowerShell (notamment ceux de gestion CIM), le script interroge le système pour récupérer des données statiques et dynamiques. Par exemple, pour obtenir la version du système d’exploitation, l’espace disponible sur le disque C, l’utilisation de la mémoire vive (RAM) ou encore le statut des mises à jour Windows en attente. Ces données sont stockées dans des variables pour être injectées dans les commandes PowerBgInfo par la suite.
2. Définition de la charte graphique et des tuiles
Le module permet de définir une palette de couleurs personnalisée afin de respecter la charte graphique de votre organisation. Chaque information collectée est ensuite associée à une tuile via des commandes spécifiques. Pour chaque tuile, vous pouvez configurer :
- L’alignement : positionnement à gauche ou à droite de l’écran.
- L’icône : sélection parmi une dizaine d’icônes prédéfinies (système, réseau, processeur, stockage, utilisateur).
- Les textes : l’intitulé principal, la valeur dynamique et une ligne de détail textuel.
- Les indicateurs visuels : l’ajout d’une jauge ou d’une barre de progression (utile pour représenter le taux d’occupation d’un disque ou de la mémoire RAM).
Voici un exemple pour déclarer une tuile :
Voici le résultat :

3. Application du fond d’écran
La commande finale prend en charge l’assemblage de tous ces éléments. Elle nécessite une image de fond par défaut (par exemple, un arrière-plan corporate que le service marketing vous enverra avec le sourire) ou l’image par défaut de Windows Server. Le script applique les tuiles par-dessus cette image de référence, puis enregistre le résultat dans un dossier local, tel que .
Vous obtenez en sortie un seul fichier image qui combine l’ensemble des éléments.
Les paramètres de la commande permettent également de spécifier :
- : où doit s’appliquer ce fond d’écran ? Sur le bureau utilisateur, l’écran de verrouillage ou les deux, ou faut-il seulement l’exporter en image.
- : le numéro de l’écran sur lequel afficher le fond d’écran.
- : comment ajuster l’image du fond d’écran sur le Bureau (étiré, centré ou ajusté).
- : l’image de fond d’écran de base sur laquelle incruster les éléments de PowerBgInfo.
- : le répertoire dans lequel PowerBgInfo peut stocker ses fichiers, notamment le fond d’écran généré (obligatoire).
La mise à jour dynamique des informations
Si vous affichez des informations statiques, vous n’avez pas besoin de lancer PowerBgInfo à intervalle régulier. Toutefois, si vous l’utilisez pour afficher des informations dynamiques, il faut le relancer tous les X minutes pour actualiser le fond d’écran (selon le niveau de précision attendu).
Le script PowerShell sert à créer une tâche planifiée pour exécuter PowerBgInfo à intervalle régulier. Plus précisément, cette tâche planifiée va lancer le script à l’ouverture de session et il sera exécuté ensuite toutes les minutes. C’est un exemple que je vous invite à personnaliser.
Note : le choix du contexte d’exécution de la tâche planifiée est un point d’attention important. Par défaut, un utilisateur standard possède le droit de modifier son propre fond d’écran. L’exécution de la tâche avec les privilèges de l’utilisateur connecté est donc suffisante pour la majorité des affichages.
Déploiement automatisé de PowerBgInfo par GPO
Pour appliquer cette configuration sur un ensemble de serveurs de façon centralisée, l’utilisation d’une stratégie de groupe (GPO) Active Directory est une bonne approche. Pour ma part, j’ai configuré une stratégie de groupe qui lance deux scripts PowerShell au démarrage de la machine.

Script 1 – Copie des fichiers sources
Le premier script de configuration s’exécute au niveau de la configuration ordinateur lors du boot du système. Son rôle est de copier les fichiers depuis le partage réseau NETLOGON vers la machine locale. Il utilise l’outil de ligne de commande pour copier le répertoire du module PowerBGInfo depuis le dossier NETLOGON vers le répertoire local des modules système : . Ici, nous exploitons le résultat de la commande présentée précédemment.
En parallèle, ce script s’assure de la création du dossier local de l’application () et y dépose le script de génération personnalisé ainsi que l’image de fond d’écran de référence.
Voici le code sur script :
Script 2 : création de la tâche planifiée
Le second script, également exécuté lors du démarrage de l’ordinateur, a pour mission de configurer une tâche planifiée locale sur le système cible.
Rappel : étant donné que certaines données telles que l’utilisation de la RAM ou de l’espace disque évoluent constamment, le fond d’écran doit être régénéré à intervalles réguliers pour rester pertinent. La tâche planifiée est programmée pour se déclencher à l’ouverture de session de n’importe quel utilisateur, puis pour se répéter de manière cyclique (par exemple, toutes les minutes ou toutes les 5 minutes). Elle appelle le script PowerShell stocké localement dans .
Le contenu du script a été présenté dans la section nommée “La mise à jour dynamique des informations“.
Conclusion
PowerBGInfo représente une alternative moderne et plus personnalisable que la solution historique BgInfo. En combinant la flexibilité de PowerShell avec un moteur de rendu graphique par tuiles, cet outil permet de concevoir des arrière-plans clairs et utiles ! Il est utilisable sur Windows et Windows Server, mais il n’est pas impossible qu’il fonctionne aussi sur Linux à condition d’installer PowerShell 7 (si vous testez, je suis preneur d’un retour).