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


Posted in Python onFebruary 11, 2018

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

# -*- 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也需要和你的文件名一致,否则会出现服务不能启动的问题。

Python 相关文章推荐
Python实现爬取知乎神回复简单爬虫代码分享
Jan 04 Python
bpython 功能强大的Python shell
Feb 16 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
Jan 24 Python
python3+PyQt5+Qt Designer实现扩展对话框
Apr 20 Python
python celery分布式任务队列的使用详解
Jul 08 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
Jul 11 Python
python实现交并比IOU教程
Apr 16 Python
Django封装交互接口代码
Jul 12 Python
Python3 用什么IDE开发工具比较好
Nov 28 Python
举例讲解Python装饰器
Dec 24 Python
PyChon中关于Jekins的详细安装(推荐)
Dec 28 Python
python实现PolynomialFeatures多项式的方法
Jan 06 Python
分析Python读取文件时的路径问题
Feb 11 #Python
Django中针对基于类的视图添加csrf_exempt实例代码
Feb 11 #Python
python jieba分词并统计词频后输出结果到Excel和txt文档方法
Feb 11 #Python
代码讲解Python对Windows服务进行监控
Feb 11 #Python
django 按时间范围查询数据库实例代码
Feb 11 #Python
python实现媒体播放器功能
Feb 11 #Python
python使用pycharm环境调用opencv库
Feb 11 #Python
You might like
php提示Warning:mysql_fetch_array() expects的解决方法
2014/12/16 PHP
详解php框架Yaf路由重写
2017/06/20 PHP
由php中字符offset特征造成的绕过漏洞详解
2017/07/07 PHP
豆瓣网的jquery代码实例
2008/06/15 Javascript
js批量设置样式的三种方法不推荐使用with
2013/02/25 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
jQuery处理json数据返回数组和输出的方法
2015/03/11 Javascript
JS正则RegExp.test()使用注意事项(不具有重复性)
2016/12/28 Javascript
javascript中json对象json数组json字符串互转及取值方法
2017/04/19 Javascript
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
nodejs判断文件、文件夹是否存在及删除的方法
2017/11/10 NodeJs
vue实现的请求服务器端API接口示例
2019/05/25 Javascript
优化Vue项目编译文件大小的方法步骤
2019/05/27 Javascript
JavaScript禁止右击保存图片,禁止拖拽图片的实现代码
2020/04/28 Javascript
vue@cli3项目模板怎么使用public目录下的静态文件
2020/07/07 Javascript
[46:16]2018DOTA2亚洲邀请赛3月30日 小组赛B组 iG VS VP
2018/03/31 DOTA
Python2.x中文乱码问题解决方法
2015/06/02 Python
利用Python如何实现一个小说网站雏形
2018/11/23 Python
Python socket模块实现的udp通信功能示例
2019/04/10 Python
Python搭建代理IP池实现存储IP的方法
2019/10/27 Python
PyTorch和Keras计算模型参数的例子
2020/01/02 Python
使用Python操作ArangoDB的方法步骤
2020/02/02 Python
在django中使用apscheduler 执行计划任务的实现方法
2020/02/11 Python
解决导入django_filters不成功问题No module named 'django_filter'
2020/07/15 Python
Silk’n激光脱毛器官网:silkn.com
2016/10/06 全球购物
美国电子产品主要品牌的授权在线零售商:DataVision
2019/03/23 全球购物
Linux管理员面试经常问道的相关命令
2014/12/12 面试题
How to spawning asynchronous work in J2EE
2016/08/29 面试题
Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
2015/01/27 面试题
后勤自我鉴定
2013/10/13 职场文书
前台接待的工作职责
2013/11/21 职场文书
2014年妇女工作总结
2014/12/06 职场文书
学生检讨书范文
2015/01/27 职场文书
如何写辞职信
2015/05/13 职场文书
硕士毕业答辩开场白
2015/05/27 职场文书
Pytorch 中net.train 和 net.eval的使用说明
2021/05/22 Python