Python 有一个win32service
似乎允许创建 Windows 服务的包。我已经仔细检查了可用的谷歌示例,例如这个:
Is it possible to run a Python script as a service in Windows? 如果可能,怎么做?
我已将代码放入~/Documents/test.py
并在提升的命令提示符下执行以下命令:
> python test.py install
> python test.py debug
不幸的是,我尝试的每个示例都失败并出现错误:
Debugging service TestService - press Ctrl+C to stop.
Error 0xC0000005 - Python could find the service class in the module
AttributeError: 'module' object has no attribute 'AppServerSvc'
(null): (null)
我已经在 Windows 7 64 位和 Windows 8 64 位上使用最新版本的 ActivePython(2.7.2.5 32 位)对其进行了测试。当然,如果服务是通过服务管理器手动启动的,它也不会启动。
我做错了什么还是 Python 不打算用于现代操作系统上的服务创建?也许我需要特定版本的 windows/python/pywin32?当然,我可以从 Windows XP 开始手动测试所有组合,但这需要很多时间:(。也许有人已经有 Python 和 Windows 服务的经验,可以提示我我做错了什么?
更新
在 Windows XP 32 位虚拟机上测试(相同的代码,相同的 activepython 发行版) - 相同的错误。