0

我有一个作为 Windows 服务运行的 Python 脚本,它会定期截取屏幕截图。我把它作为一个简单的 Python 脚本工作,但现在我已经把它变成了一个服务,它不再起作用。我在 Windows 事件查看器中得到这个输出:

The instance's SvcRun() method failed 
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\win32\lib\win32serviceutil.py", line 835, in SvcRun
    self.SvcDoRun()
File "D:\Malcolm\Dropbox\code\ambihue\ambiservice.py", line 58, in SvcDoRun
    r, g, b = ambihue.getAverageScreenColor()
File "D:\Malcolm\Dropbox\code\ambihue\ambihue.py", line 21, in getAverageScreenColor
    screen = ImageGrab.grab()
File "C:\Python27\lib\site-packages\PIL\ImageGrab.py", line 47, in grab
    size, data = grabber()
IOError: screen grab failed 
%2: %3

这是我获取屏幕的方法:

screen = ImageGrab.grab()

关于让我的服务成功获得屏幕的任何建议?或者你有任何其他的抓取屏幕的解决方案——我现在正在使用 PIL。

我的整个代码都在这里: https ://github.com/crummy/ambihue

4

0 回答 0