久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Python 編寫Windows服務(wù)程序:將Python作為Windows服務(wù)啟動(dòng)

 看風(fēng)景D人 2014-01-07

Python程序作為Windows服務(wù)啟動(dòng),需要安裝pywin32包,。下載路徑:

http:///projects/pywin32/files/pywin32/


 


#-*- coding:utf-8 -*-

  1. import win32serviceutil   
  2. import win32service   
  3. import win32event   
  4.   
  5. class PythonService(win32serviceutil.ServiceFramework):   
  6.     """ 
  7.     Usage: 'PythonService.py [options] install|update|remove|start [...]|stop|restart [...]|debug [...]' 
  8.     Options for 'install' and 'update' commands only: 
  9.      --username domain\username : The Username the service is to run under 
  10.      --password password : The password for the username 
  11.      --startup [manual|auto|disabled|delayed] : How the service starts, default = manual 
  12.      --interactive : Allow the service to interact with the desktop. 
  13.      --perfmonini file: .ini file to use for registering performance monitor data 
  14.      --perfmondll file: .dll file to use when querying the service for 
  15.        performance data, default = perfmondata.dll 
  16.     Options for 'start' and 'stop' commands only: 
  17.      --wait seconds: Wait for the service to actually start or stop. 
  18.                      If you specify --wait with the 'stop' option, the service 
  19.                      and all dependent services will be stopped, each waiting 
  20.                      the specified period. 
  21.     """  
  22.     #服務(wù)名   
  23.     _svc_name_ = "PythonService"  
  24.     #服務(wù)顯示名稱   
  25.     _svc_display_name_ = "Python Service Demo"  
  26.     #服務(wù)描述   
  27.     _svc_description_ = "Python service demo."  
  28.   
  29.     def __init__(self, args):   
  30.         win32serviceutil.ServiceFramework.__init__(self, args)   
  31.         self.hWaitStop = win32event.CreateEvent(None00None)  
  32.         self.logger = self._getLogger()  
  33.         self.isAlive = True  
  34.           
  35.     def _getLogger(self):  
  36.         import logging  
  37.         import os  
  38.         import inspect  
  39.           
  40.         logger = logging.getLogger('[PythonService]')  
  41.           
  42.         this_file = inspect.getfile(inspect.currentframe())  
  43.         dirpath = os.path.abspath(os.path.dirname(this_file))  
  44.         handler = logging.FileHandler(os.path.join(dirpath, "service.log"))  
  45.           
  46.         formatter = logging.Formatter('%(asctime)s %(name)-12s %(levelname)-8s %(message)s')  
  47.         handler.setFormatter(formatter)  
  48.           
  49.         logger.addHandler(handler)  
  50.         logger.setLevel(logging.INFO)  
  51.           
  52.         return logger  
  53.   
  54.     def SvcDoRun(self):  
  55.         import time  
  56.         self.logger.error("svc do run....")   
  57.         while self.isAlive:  
  58.             self.logger.error("I am alive.")  
  59.             time.sleep(1)  
  60.         # 等待服務(wù)被停止    
  61.         #win32event.WaitForSingleObject(self.hWaitStop, win32event.INFINITE)    
  62.               
  63.     def SvcStop(self):   
  64.         # 先告訴SCM停止這個(gè)過(guò)程    
  65.         self.logger.error("svc do stop....")  
  66.         self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)   
  67.         # 設(shè)置事件    
  68.         win32event.SetEvent(self.hWaitStop)   
  69.         self.isAlive = False  
  70.   
  71. if __name__=='__main__':   
  72.     win32serviceutil.HandleCommandLine(PythonService)  


安裝服務(wù)

python PythonService.py install

讓服務(wù)自動(dòng)啟動(dòng)

python PythonService.py --startup auto install 

啟動(dòng)服務(wù)

python PythonService.py start

重啟服務(wù)

python PythonService.py restart

停止服務(wù)

python PythonService.py stop

刪除/卸載服務(wù)

python PythonService.py remove


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多