我正在尝试在Windows 7下运行python服务但是我无法启动它。
我已经开始使用
安装服务了c:\amsconnector>amsconnector.py --username domain\admin --password ************ install
Installing service AMS Acomba Connector
Service installed
之后,我跑
c:\amsconnector>amsconnector.py start
Starting service AMS Acomba Connector
当我检查正在运行的服务列表时,我注意到服务没有运行,当检查事件日志时,我看到了这个堆栈跟踪
Python could not import the service's module
Traceback (most recent call last):
File "C:\amsconnector\amsconnector.py", line 343, in <module>
win32serviceutil.HandleCommandLine(AMSConnectorService)
File "C:\Python27\lib\site-packages\win32\lib\win32serviceutil.py", line 521, in HandleCommandLine
usage()
File "C:\Python27\lib\site-packages\win32\lib\win32serviceutil.py", line 505, in usage
sys.exit(1)
SystemExit: 1
%2: %3
amsconnector.py的第343行看起来像这样
if True or __name__ == '__main__':
win32serviceutil.HandleCommandLine(AMSConnectorService)
签出win32serviceutil.py的源代码后,看来该服务只是打印出win32service用法对话框,而不是实际运行python类。我完全糊涂了!
答案 0 :(得分:0)
谢谢罗兰!
我能够通过简单地删除最后一行的“真或”部分来解决这个问题:
if True or __name__ == '__main__':
win32serviceutil.HandleCommandLine(AMSConnectorService)