Python – 快速更改桌面背景

我想知道是否有任何方法 – 在Python中 – 快速更改Windows 7机器的桌面背景。 现在我正在使用:

ctypes.windll.user32.SystemParametersInfoA(20, 0, picture_path, 0) 

虽然这个工作,它不是很快。 我想知道是否有一些方法可以在不到一秒的时间内更新背景。

谢谢!

编辑 – 这可能是值得注意的,我的目标是改变许多已知图像之间的背景非常快。

如果您知道如何使用PowerShell,则可以尝试使用PowerShell功能更改背景图像( http://social.technet.microsoft.com/Forums/en-US/w7itproui/thread/72a9b4bf-071b-47cd- 877d-0c0629a9eb90 ):

 Function Set-WallPaper($Value) { Set-ItemProperty -path 'HKCU:\Control Panel\Desktop\' -name wallpaper -value $value rundll32.exe user32.dll, UpdatePerUserSystemParameters } 

然后从python调用PowerShell函数:

 import subprocess subprocess.Popen([r'path/to/PowerShell/script.exe', '-ExecutionPolicy', 'Unrestricted', 'path/to/background_image.png'], cwd=os.getcwd()) 

看看这个 。 他们只使用位图,但有功能来转换图像,如图所示。