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.
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):
That answer in turn gives credit to an open source project
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With