Controlling Dual Monitor Slideshow

  • Thread starter Thread starter HughCR
  • Start date Start date
H

HughCR

Guest
I have a dual monitor setup, with the windows 10 slideshow showing a different image for each monitor. When I use the desktop menu "Next desktop background", it changes the background for monitor 0. Next time I select it, it changes the background for monitor 1.

The app I am trying to write, apart from displaying the path of each picture on the appropriate monitor, and various image info, is to advance the desktop image for a particular monitor. If I use the IDesktopWallpaper interface, and AdvanceSlideshow,

var wallpaper = (IDesktopWallpaper)(new DesktopWallpaperClass());
wallpaper.AdvanceSlideshow(null, DesktopSlideshowDirection.Forward);

if I use anyhthing other than null for the path, I get a "not implemented" error.

If I use

SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, null, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE) with anything other than null as the path, I get a black screen.

I have tried various type of path - String, StringBuilder, string.ToCharArray() and a null terminated char[], and it all works the same on both usages.

My questions are :

a) Is it possible, using the display path to do what I want, and

b) How does windows decide which monitor is actioned using the desktop menu item?

Thanks in advance!

Hugh

Continue reading...
 
Back
Top