如何更改 windows 桌面背景

How to change windows desktop background

我意识到关于这个主题还有其他问题,所有这些问题我都试图实现并失败了。我想以一个完整的答案结束,最好是通过演示,说明如何在 Windows 且仅 Windows 中立即设置桌面背景,而无需用户登录和注销或锁定和锁定重新登录。涉及使用运行时控制台推送注册表项然后 rundll32 user32.dll 调用 UpdatePerUserSystemPreferences 的方法对我来说还没有用。当用户在资源管理器中右键单击图像文件并选择 'Set as desktop background' 时,将实现所需的行为。我想以编程方式执行此操作,即使它发展到打开隐藏的资源管理器 window 并右键单击其中的文件的级别,只要用户看不到它。有问题的应用程序会使用有用的系统信息更新用户的桌面背景图像。要使用的图像将每五秒生成和重新生成一次。

Can I change my Windows desktop wallpaper programmatically in Java/Groovy?

因此,如果您不熟悉 JNA 或者您没有使用过 JNA,那么正确的方法是使用 JNA,上面的 link 适合您。否则你使用当地人是正确的,但你从未说明你是如何使用他们的,所以我只是在黑暗中拍摄。