Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Set multiple wallpapers?

As you know, since a few versions, Windows allows you to set multiple wallpapers that rotate automatically. I'm creating a program to sync my wallpapers over my computers and I'd like to know if it's possible not to set one wallpaper (as a lot of posts show how to do), but multiple ones, as if I went to Personalize > Wallpaper > Select more than one.

I could of course use a timer to change it but it would make the software heavier and if Windows has a way to do it properly it would be way better.

like image 689
Thomas Kowalski Avatar asked Aug 30 '26 22:08

Thomas Kowalski


1 Answers

As Reza Aghaei noted in the comments, starting with Windows 8 you can set per-monitor wallpaper programmatically using the IDesktopWallpaper::SetWallpaper COM call

There's actually a complete example given on a question concerning a different topic (how to instantiate an instance when all you know is the COM interface):

  • https://stackoverflow.com/a/41713718/103167

That answer in turn gives credit to an open source project

  • https://bitbucket.org/ciniml/desktopwallpaper
like image 195
Ben Voigt Avatar answered Sep 02 '26 11:09

Ben Voigt



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!