如何修改Windows电脑桌面背景?Python实现代码运行后背景变黑如何解决
Python修改Windows桌面背景变黑问题解决方案
核心错误原因
- 调用
SystemParametersInfoWAPI时传入了相对路径,Windows系统API无法识别相对于Python脚本的路径,找不到目标图片就会默认加载黑色背景 - 最后一个参数配置错误,未设置配置更新和桌面刷新标记,修改没有真正生效
修正后可运行代码
import ctypes import os # 系统API常量定义 SPI_SETDESKWALLPAPER = 20 SPIF_UPDATEINIFILE = 0x01 # 将修改写入系统配置文件永久生效 SPIF_SENDCHANGE = 0x02 # 向系统广播配置变更通知,立即刷新桌面 # 自动将相对路径转为系统可识别的绝对路径,确保BG.png和脚本放在同一目录 wallpaper_path = os.path.abspath("BG.png") # 调用系统API修改壁纸 ctypes.windll.user32.SystemParametersInfoW( SPI_SETDESKWALLPAPER, 0, wallpaper_path, SPIF_UPDATEINIFILE | SPIF_SENDCHANGE )
异常排查项
如果修改后依旧显示黑色背景,按以下顺序排查:
- 确认目标图片文件无损坏,可直接双击打开正常查看
- 确认图片路径正确,也可以手动传入完整绝对路径测试,例如
wallpaper_path = r"C:\Users\你的用户名\Pictures\test.png" - 检查是否安装了第三方壁纸管理、桌面美化类软件,这类软件通常会拦截系统默认的壁纸修改请求
- 检查Windows系统个性化设置中,是否开启了壁纸自动切换、同步其他设备壁纸的功能,临时关闭后重试
内容的提问来源于stack exchange,提问作者Pigioty
相关产品推荐
相关产品推荐

