微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Windows API触发壁纸洗牌

有没有办法在Windows壁纸幻灯片触发洗牌? 最好是我可以从.net使用的东西

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

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);

我运行代码时没有任何反应,也没有错误

如何为Windows上的任务栏创build工具栏?

分布式键/值存储可以在Windows上运行,并具有.Net客户端?

在低于10的Windows版本上安装ClickOnce应用程序时出错

事件日志,P字段中的.NET运行时错误

C#/。NET定时器和Win32睡眠function都是不精确的

标准输出读取器挂起BCP工具

在Windows上有没有相当于.Net的Valgrind?

Mono真的是跨平台吗?

从Windows服务获取用户根目录

为什么在.NET / C#中将未处理的exception打印到stderr?

尝试以下操作:

您的主题位于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

OH WAIT,刚刚发现你只是想洗牌。 Flot2011的答案是要走的路。

您可以通过以下方式找到当前用户主题的完整路径:

HKCU 软件微软的Windows CurrentVersion 主题 CurrentTheme

如果有任何这样的API,它可能不会被暴露。 如果我是你,我会做的最好的事情是在桌面上下文菜单中模拟点击“下一个桌面背景”选项。 有几种方法可以做到这一点,但我会建议你使用GetDesktopWindow api,模拟鼠标右键并发送'n'键。 我不完全确定这将实现什么效果,但它应该工作。

另外看看这个: http : //www.technixupdate.com/keyboard-shortcut-or-hotkey-to-switch-to-next-windows-7-desktop-wallpaper/

注册表项

HKEY_CURRENT_USER Control Panel Personalization Desktop Slideshow

包含值应该让你控制功能的几个方面。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐