Personnaliser l’image d’arrière-plan du Bureau

Voici comment personnaliser l’arrière-plan du bureau avec Powershell, sans avoir ni  à rebooter ni à se relogger.

Nous allons nous servir d’une fonction qui se trouve dans User32.Dll et qui s’appelle SystemParametersInfo et la déclarer dans un namespace qu’on appellera Params  :

Ensuite nous définissons quelques constantes:

L’opération est un changement de l’image en arrière plan du bureau:

Les paramètres sont un changement du fichier INI qui déclare l’image à placer ainsi que l’envoi d’un événement Windows qui alertera Explorer du changement. Explorer gère l’image d’arrière plan.

On combine ces deux valeur avec un bit OR pour créer un bitmask.

Définissons maintenant l’image qu’on veut charger dans une variable:

Finalement on appelle la fonction SystemParamInfo sans oublier le namespace [Params]:

Voici le script en entier:

Pour plus d’info voir ce lien vers MSDN.

Partager ce contenu

  • Paul

    Bonjour,
    Super script, comment faire pour passer les paramètres de taille de l’image? (L’avoir en full screen?)

    • Jojo

      Bonjour,

      Pour faire cela il faut modifier le registre windows:
      – mettre « HKCU\Control Panel\Desktop\TileWallpaper » à « 1 » et « HKCU\Control Panel\Desktop\WallpaperStyle » à « 0 » pour que le fond écran soit Tiled.

      – mettre « HKCU\Control Panel\Desktop\TileWallpaper » à « 0 » et « HKCU\Control Panel\Desktop\WallpaperStyle » à « 0 » pour que le fond écran soit centré.

      – mettre « HKCU\Control Panel\Desktop\TileWallpaper » à « 0 » et « HKCU\Control Panel\Desktop\WallpaperStyle » à « 2 » pour que le fond écran soit Stretched, sur tout l’écran.

      Regarder ici « https://code.msdn.microsoft.com/windowsdesktop/CppSetDesktopWallpaper-eb969505 » pour plus de plus amples informations.

      Ps: Les valeurs des clés sont des chaînes de caractères.