通过脚本或批处理文件根据一天中的时间更改墙纸?


9

我想拥有2种不同的壁纸,这些壁纸根据一天中的时间(分别为6和22小时)而变化,并且只希望在22小时之后显示一个夜晚,而仅在6小时之后直到22小时显示一天。

我没有找到一个可以在待机后执行此操作的程序,因此我认为使用任务计划程序运行脚本应该很容易实现。现在的问题不仅是如何实现这样的脚本,还包括该脚本是否应包括时间检查或任务计划程序。我不确定长时间PC处于待机状态时哪种方法会更好。

我已经从类似的问题中尝试了一些脚本,希望我可以根据自己的需要对其进行修改,但是它们根本无法正常工作。

有人可以帮助我吗?TIA。

Answers:


5

这实际上很简单:

  1. 右键单击桌面背景
  2. 选择“个性化”
  3. 点击“桌面背景”
  4. 将图像拖放到框中或选择“浏览”并找到图像
  5. 检查两个图像,确保第一天早上
  6. 等到12:00 AM,然后选择“每12小时更改图片”
  7. 请享用!

这真是个绝妙的招!
aalaap 2014年

5

使用任务计划程序并创建一个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


这是真正的答案。
乔·编码员”

1

每当我看到有人问有关在特定时间或在Windows上定期执行某项操作时,请支持我使用Windows Task Scheduler的想法

在此处输入图片说明

要执行您打算做的事情,您应该创建两个任务,每个任务计划执行一个脚本或命令,以在您想要的特定时间从一个墙纸更改为另一个墙纸。这些命令应能够自行自动更改Windows墙纸,最简单的方法是使用Windows注册表。在这里,您可以找到HOWTO:使用以下注册表项更改桌面墙纸

HKEY_CURRENT_USER \控制面板\桌面\墙纸

因此,创建您的任务,将值设置为注册表,您将能够自动更改它,而无需安装任何第三方应用程序。


谢谢,但这需要重新启动,但需要立即应用。我也已经尝试过该程序。它无法完成我想要的操作,因为例如,如果PC由于处于待机状态而错过了切换时间,它就无法将墙纸从晚上更改为白天。
Patrick

这根本没有帮助他-因此,我在帖子中写的内容需要重新启动或注销并登录才能进行更改,因此不是自动的。
PnP 2012年

您实际上已经很接近了,您只需要稍后再更新系统参数即可。看我的答案。
SteenSchütt

1

我一直想这样做,然后又回到主题上,在重新安装操作系统后将配置调整回我喜欢的方式。

在查看了项目之后,我找到了幻灯片放映配置文件;(%APPDATA%/ Microsoft / Windows / Themes / slideshow.ini)。该文件包含一行“ ImagesRootPIDL =“,经过一番谷歌搜索之后,它表明下面的字母,数字和符号大字符串实际上是一个字符串,一个“ uuencoded PCIDLIST_ABSOLUTE”显然是一种在Windows中找到目录的方法比使用路径更低的级别。

总之,总的来说,当将图像添加到幻灯片放映的目录中或将幻灯片放映更改为新目录时,此文件似乎就好像在更改。因此,我的解决方案是每天将批处理文件写入两次,具体取决于%TIME%变量,然后将每个幻灯片的.ini复制到我的配置文件夹中,并在白天或晚上添加它们,然后覆盖.ini文件。带有适当的幻灯片.ini文件的主题文件夹。

我的解决方案的一个缺点是,我现在一直在运行一个批处理文件,尽管我猜想计划的任务会更好地实现并解决该问题,但我喜欢构建只与自己真正交互的东西。到目前为止,不需要重新启动计算机或浏览器即可在幻灯片之间切换,它只是在幻灯片之间的时间结束后才可以切换到下一个幻灯片。我还没有尝试过使其失败,但是对我来说,运行它两周似乎已足够调试。

我是Windows OS的新手,所以我很抱歉,如果其中包含太多明显的陈述,或者单击几次即可轻松完成。我认为这种事情是学习OS内部工作原理的最快方法,尽管我认为我可以在linux bash脚本中用大约五行代码来编写它,而不是用四十行奇数批处理巨著来编写。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.