怎么在windows上启动python_如何在Windows中将Python脚本作为服务运行?

小编典典

可以。我使用ActivePython随附的pythoncom库或可以与pywin32(适用于Windows的Python扩展)一起安装的方式来执行此操作。

这是简单服务的基本框架:

import win32serviceutil

import win32service

import win32event

import servicemanager

import socket

class AppServerSvc (win32serviceutil.ServiceFramework):

_svc_name_ = "TestService"

_svc_display_name_ = "Test Service"

def __init__(self,args):

win32serviceutil.ServiceFramework.__init__(self,args)

self.hWaitStop = win32event.CreateEvent(None,0,0,None)

socket.setdefaulttimeout(60)

def SvcStop(self):

self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)

win32event.SetEvent(self.hWaitStop)

def SvcDoRun(self):

servicemanager.LogMsg(servicemanager.EVENTLOG_INFORMATION_TYPE,

servicemanager.PYS_SERVICE_STARTED,

(self._svc_name_,''))

self.main()

def main(self):

pass

if __name__ == '__main__':

win32serviceutil.HandleCommandLine(AppServerSvc)

你的代码将进入main()方法中-通常带有某种无限循环,可能会通过检查在SvcStop方法中设置的标志而中断

2020-02-12

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值