Python 2.7脚本如何检测Windows屏幕保护程序的启动/停止事件?
答案 0 :(得分:1)
您实际上可以使用Pywin32执行此操作。 Pywin为Win32 API和COM提供了Python绑定。
关于您的问题,它允许您“监听”Windows事件 - 例如Windows ScreenSaver的启动/停止事件。
您应该能够通过执行以下操作来获取屏幕保护程序的当前状态:
import win32gui, win32con
def CheckScreenSaverState():
return win32gui.SystemParametersInfo(win32con.SPI_GETSCREENSAVERRUNNING)
在这个例子中,我们使用win32gui,它允许访问Windows应用程序的GUI。通过调用win32gui.SystemParametersInfo(这是一个实际属于Windows GUI消息系统的函数 - 超出此解释的范围,阅读更多here),我们可以获得屏幕保护程序的状态,使用SPI_GETSCREENSAVERRUNNING常量(这是Windows操作系统的内部常量)。我写的这个方法应该返回屏幕保护程序状态的布尔值(如果不是,则运行False)。
我没时间测试它,但告诉我它是怎么回事我可以帮助你。
祝你好运, 汤姆。