以windows service的方式运行Python程序
来源:互联网 发布:会议抽奖软件 编辑:程序博客网 时间:2024/05/22 18:16
#!/usr/bin/env python# coding: utf-8# SmallestService.py## A sample demonstrating the smallest possible service written in Python.import win32serviceutilimport win32serviceimport win32eventimport timeclass SmallestPythonService(win32serviceutil.ServiceFramework): _svc_name_ = "SmallestPythonService" _svc_display_name_ = "The smallest possible Python Service" def __init__(self, args): win32serviceutil.ServiceFramework.__init__(self, args) # Create an event which we will use to wait on. # The "service stop" request will set this event. self.hWaitStop = win32event.CreateEvent(None, 0, 0, None) def SvcStop(self): # Before we do anything, tell the SCM we are starting the stop process. self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING) # And set my event. win32event.SetEvent(self.hWaitStop) def SvcDoRun(self): #把你的程序代码放到这里就OK了 f=open('d:\\log.txt','w',0) f.write(time.ctime(time.time())) f.close() win32event.WaitForSingleObject(self.hWaitStop, win32event.INFINITE)if __name__=='__main__': win32serviceutil.HandleCommandLine(SmallestPythonService) # 括号里的名字可以改成其他的,必须与class名字一致;