Answers:
使用任务计划程序并创建一个VBscript来更改墙纸。为您要使用的每个墙纸创建脚本。
dim shell
Set shell = WScript.CreateObject("WScript.Shell")
wallpaper = "C:\path\to\wallpaper.jpg"
shell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", wallpaper
shell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True
将文件另存为something.vbs并将其添加到任务计划程序中,瞧!一切顺利。
还提到过,如果您在应更换计算机时将其关闭,则不会更改墙纸。这是错误的,因为可以将任务设置为在选定的时间后首次启动时运行,因此即使您在应该更改时间的情况下关闭了计算机,也可以在您启动计算机后立即进行设置。要进行设置,请转到特定的任务属性,然后进入“设置”选项卡。勾选窗口中的第二个框,然后关闭。
该脚本在Windows 8中非常适合我。请注意,我如何稍微修改了原始脚本以使脚本更短。
资料来源:http: //www.ehow.com/facts_7586006_script-change-desktop-background.html
每当我看到有人问有关在特定时间或在Windows上定期执行某项操作时,请支持我使用Windows Task Scheduler的想法。
要执行您打算做的事情,您应该创建两个任务,每个任务计划执行一个脚本或命令,以在您想要的特定时间从一个墙纸更改为另一个墙纸。这些命令应能够自行自动更改Windows墙纸,最简单的方法是使用Windows注册表。在这里,您可以找到HOWTO:使用以下注册表项更改桌面墙纸:
HKEY_CURRENT_USER \控制面板\桌面\墙纸
因此,创建您的任务,将值设置为注册表,您将能够自动更改它,而无需安装任何第三方应用程序。
我一直想这样做,然后又回到主题上,在重新安装操作系统后将配置调整回我喜欢的方式。
在查看了项目之后,我找到了幻灯片放映配置文件;(%APPDATA%/ Microsoft / Windows / Themes / slideshow.ini)。该文件包含一行“ ImagesRootPIDL =“,经过一番谷歌搜索之后,它表明下面的字母,数字和符号大字符串实际上是一个字符串,一个“ uuencoded PCIDLIST_ABSOLUTE”显然是一种在Windows中找到目录的方法比使用路径更低的级别。
总之,总的来说,当将图像添加到幻灯片放映的目录中或将幻灯片放映更改为新目录时,此文件似乎就好像在更改。因此,我的解决方案是每天将批处理文件写入两次,具体取决于%TIME%变量,然后将每个幻灯片的.ini复制到我的配置文件夹中,并在白天或晚上添加它们,然后覆盖.ini文件。带有适当的幻灯片.ini文件的主题文件夹。
我的解决方案的一个缺点是,我现在一直在运行一个批处理文件,尽管我猜想计划的任务会更好地实现并解决该问题,但我喜欢构建只与自己真正交互的东西。到目前为止,不需要重新启动计算机或浏览器即可在幻灯片之间切换,它只是在幻灯片之间的时间结束后才可以切换到下一个幻灯片。我还没有尝试过使其失败,但是对我来说,运行它两周似乎已足够调试。
我是Windows OS的新手,所以我很抱歉,如果其中包含太多明显的陈述,或者单击几次即可轻松完成。我认为这种事情是学习OS内部工作原理的最快方法,尽管我认为我可以在linux bash脚本中用大约五行代码来编写它,而不是用四十行奇数批处理巨著来编写。
遗憾的是,我认为Windows内置没有任何功能可以让您执行此操作而无需实际注销并重新登录。由于可以通过注册表控制墙纸,因此您可以构造一个批处理文件来修改注册表项-但是墙纸的更改只有在您注销并重新登录后才能看到。您可以尝试使用第三方应用程序,例如:http : //download.cnet.com/Automatic-Wallpaper-Changer/3000-2336_4- 10560884.html
希望这可以帮助。