如何从脚本设置 Windows 上的桌面背景?

16 windows script windows-xp desktop-customization

在 X Windows 上,我有一个很酷的“静音警报”提醒脚本,可以将我的根窗口(背景)颜色更改为纯红色,只需几秒钟,然后再将其更改回来。有没有办法为 Windows 执行此操作经验值?

我正在考虑某种使用 cscript 设置注册表项 ( HKEY_CURRENT_USER\Control Panel\Desktop)的计划任务。但是,我的尝试似乎没有任何效果。我必须发出什么信号才能读取这些注册表项并重新绘制桌面?

小智 9

这确实通过命令行更改了背景。只需将其保存为 bat 文件即可。使用 bmp 否则你将不得不刷新。还将墙纸设置为拉伸。如果您取出墙纸样式线,它将自动居中。

@echo off
reg add "HKCU\control panel\desktop" /v wallpaper /t REG_SZ /d "" /f 
reg add "HKCU\control panel\desktop" /v wallpaper /t REG_SZ /d "C:\[LOCATION OF WALLPAPER HERE]" /f 
reg delete "HKCU\Software\Microsoft\Internet Explorer\Desktop\General" /v WallpaperStyle /f
reg add "HKCU\control panel\desktop" /v WallpaperStyle /t REG_SZ /d 2 /f
RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters 
exit
Run Code Online (Sandbox Code Playgroud)


小智 6

我认为一旦你修改了注册表中的壁纸设置,你只需要运行

RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters 
Run Code Online (Sandbox Code Playgroud)

从命令行,更改应该生效。您需要确保您的图像是 bmp 文件。

事实上,我只是通过创建一个全红色的桌面大小的 bmp 文件来尝试这个。我更改了 //HKCU/control panel/desktop/wallpaper 键以包含此位图的完整路径名。我从命令行运行了上面的命令,桌面变成了我刚刚创建的红色bmp


小智 1

这并不像实际花时间编写代码那么酷,但是有一个非常有用的系统实用程序,称为bginfo,可以将信息嵌入到桌面背景中。它可以通过各种命令行选项进行相当可配置的。不,不是我写的。