Windows-Hintergrundbild mit Perl setzen

12. Februar 2021 · Programmierung · andreas · Kein Kommentar

Das Setzen des Windows-Hintergrundbilds ist von Perl aus ganz einfach - zumindest wenn man die Win32-API verwendet:

use strict;
use warnings;
use Win32::API;

use constant SPI_SETDESKWALLPAPER => 0x0014;
use constant SPIF_UPDATEINIFILE   => 0x0001;
use constant SPIF_SENDCHANGE      => 0x0002;
use constant ZERO                 => 0x0000;

my $syspinf = Win32::API->new('user32', 'SystemParametersInfo', [I,I,P,I], I) or die "SystemParametersInfo not available.\n";

$syspinf->Call(SPI_SETDESKWALLPAPER, ZERO, $ARGV[0], SPIF_UPDATEINIFILE | SPIF_SENDCHANGE);

Das Skript erwartet den Namen des Bildes inklusive Pfad als Parameter.