服务器之家

服务器之家 > 正文

python脚本作为Windows服务启动代码详解

时间:2021-01-15 00:15     来源/作者:脚本之家

我们首先来看下全部代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# -*- coding: cp936 -*-
import win32serviceutil
import win32service
import win32event
class test1(win32serviceutil.ServiceFramework):
  _svc_name_ = "test_python"
  _svc_display_name_ = "test_python"
  def __init__(self, args):
    win32serviceutil.ServiceFramework.__init__(self, args)
    self.hWaitStop = win32event.CreateEvent(None, 0, 0, None)
  def SvcStop(self):
    # 先告诉SCM停止这个过程
    self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)
    # 设置事件
    win32event.SetEvent(self.hWaitStop)
  def SvcDoRun(self):
    # 等待服务被停止
    win32event.WaitForSingleObject(self.hWaitStop, win32event.INFINITE)
if __name__=='__main__':
  win32serviceutil.HandleCommandLine(test1)

这里注意,如果你需要更改文件名,比如将win32serviceutil.HandleCommandLine(test1)中的test1更改为你的文件名,同时class也需要和你的文件名一致,否则会出现服务不能启动的问题。

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
Intellij idea2020永久破解,亲测可用!!!
Intellij idea2020永久破解,亲测可用!!! 2020-07-29
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部