有没有办法在Windows墙纸幻灯片播放中触发随机播放?
最好是我可以从.net使用的东西

编辑:所以我试图使用IActiveDesktop接口(interface),我从here得到它,我试图像这样使用它:

public static IActiveDesktop GetActiveDesktop()
{
    Type typeActiveDesktop = Type.GetTypeFromCLSID(new Guid("{75048700-EF1F-11D0-9888-006097DEACF9}"));
    return (IActiveDesktop) Activator.CreateInstance(typeActiveDesktop);
}

然后像这样调用它:
IActiveDesktop dt = GetActiveDesktop();
dt.ApplyChanges(AD_APPLY.ALL | AD_APPLY.FORCE | AD_APPLY.BUFFERED_REFRESH);

当我运行代码时,什么也没有发生,也没有错误。

最佳答案

请尝试以下方法:

您的主题位于C:\Users\USERNAME\AppData\Local\Microsoft\Windows\Themes\.theme

打开.theme文件,并在[幻灯片放映]部分中更新随机播放标志:

[Slideshow]
Shuffle=1

然后使用IActiveDesktop界面重新加载主题,并使用以下参数调用ApplyChange:

AD_APPLY_ALL | AD_APPLY_FORCE | AD_APPLY_BUFFERED_REFRESH

10-06 15:00