Windows 7 如何在Windows 7中启动幻灯片演示桌面更改

Windows 7 如何在Windows 7中启动幻灯片演示桌面更改,windows-7,slideshow,wallpaper,Windows 7,Slideshow,Wallpaper,我正试图触发桌面幻灯片的更改,但我找不到一个公共API来执行此操作 我越接近于看到正在使用的方法的名称(它们使用的是COM对象,但我不知道要实例化它的CLSID) 我已经知道如何更改桌面墙纸(我已经这样做了),我想要的是一种触发幻灯片放映转换的方法(Windows 7新增)。这并不能回答您的问题,您可能已经解决了,但是如果桌面幻灯片放映引擎(我将称之为)已经启动(如果您打开“个性化”>“桌面背景”,然后从“图片位置”下拉列表中选择“Windows桌面背景”,然后您将看到背景淡入淡出-这是引擎启动

我正试图触发桌面幻灯片的更改,但我找不到一个公共API来执行此操作

我越接近于看到正在使用的方法的名称(它们使用的是COM对象,但我不知道要实例化它的CLSID)


我已经知道如何更改桌面墙纸(我已经这样做了),我想要的是一种触发幻灯片放映转换的方法(Windows 7新增)。

这并不能回答您的问题,您可能已经解决了,但是如果桌面幻灯片放映引擎(我将称之为)已经启动(如果您打开“个性化”>“桌面背景”,然后从“图片位置”下拉列表中选择“Windows桌面背景”,然后您将看到背景淡入淡出-这是引擎启动)然后您可以通过调用JPEG图片的“SetWallpaper”,然后通过以下参数调用“ApplyChanges”来使用:

AD_应用| AD_应用|强制| AD_应用|缓冲|刷新

当你这样做的时候,你会注意到幻灯片的过渡效果是用来显示你指定的墙纸的

但是重新启动(或者关闭Explorer.exe并重新启动)同样的调用不会进行转换,它只会以旧的、即时的方式更改背景。Spy++的一些挖掘显示,当幻灯片引擎运行时,实际的桌面FolderView不再位于窗口父/子关系中的“程序管理器”下,它属于一个名为“WorkerW”的新窗口,该窗口位于内部e浏览器(与上面的调用堆栈紧密结合)。换句话说,它从Progman控制桌面窗口


因此,您需要做的是找出如何让Explorer初始化桌面窗口的新所有者(“幻灯片放映引擎”),然后您可以使用IActiveDesktop界面更改背景。

嘿,感谢您提供的信息,至少我还有更近的地方可以看……只要(如果)我得到更多关于此的信息,我就会发布它。