【发布时间】:2013-06-05 15:20:42
【问题描述】:
有谁知道用 python 更改 Windows 桌面壁纸的方法,以便永久更改?我找到了这段代码
import ctypes
SPI_SETDESKWALLPAPER = 20
ctypes.windll.user32.SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, "myimage.jpg" , 0)
此代码有效,但一旦您注销并再次登录,背景将恢复为原始图像。我更喜欢不需要任何注册表编辑的解决方案,如果可能的话,我想要适用于 Windows XP 和 7 的解决方案。
【问题讨论】:
-
可能是壁纸设置为动态。一段时间后更换壁纸。
-
嗯。我再次运行python脚本,它改变了背景图像,但选择的图像仍然是旧图像......
-
最后一个参数
fWinIni“指定是否要更新用户配置文件”。标志是SPIF_UPDATEINIFILE == 1和SPIF_SENDCHANGE == 2。后者广播WM_SETTINGCHANGE消息。尝试使用fWinIni == 3。 -
@eryksun 将其更改为 3 会导致我的背景在下次登录时变黑。桌面背景窗口显示我的背景现在是一个名为 myimage 的文件,它是一个黑色窗口。
-
使用的是绝对路径吗? “myimage.jpg”一开始可能会起作用,因为它与您进程的当前工作目录相关。
标签: python windows python-2.7 ctypes wallpaper