如何通过Python启动Windows系统配置的屏幕保护程序?
如何通过Python启动Windows已配置的屏幕保护程序
你之前直接调用C:\Windows\System32\scrnsave.scr只会启动默认的空白屏保,而非系统控制面板中配置的那一款,以下是两种可行的解决方法:
方法1:读取注册表获取当前屏保路径并启动
通过读取系统注册表中存储的当前屏保路径,再启动对应程序(需添加/s参数避免打开设置窗口):
import subprocess import winreg # 打开注册表项读取当前屏保路径 key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r"Control Panel\Desktop") scr_path, _ = winreg.QueryValueEx(key, "SCRNSAVE.EXE") winreg.CloseKey(key) # 启动屏保,/s 参数用于直接启动而非打开设置界面 subprocess.Popen(f'"{scr_path}" /s')
方法2:通过Windows API触发屏保
使用pywin32库发送系统命令消息,让系统自动启动已配置的屏保,无需手动读取路径:
- 先安装依赖库:
pip install pywin32 - 执行代码:
import win32api import win32con # 广播SC_SCREENSAVE命令消息触发屏保 win32api.SendMessage(win32con.HWND_BROADCAST, win32con.WM_SYSCOMMAND, win32con.SC_SCREENSAVE, 0)
内容的提问来源于stack exchange,提问作者Basj
相关产品推荐
相关产品推荐

