将python的程序包装成windows下的service

  使用python编写的脚本应用程序,在运行的时候需要有python的运行环境,但是我们肯定是希望整个python程序能够像应用程序一样打包生成一个包括其运行环境的exe文件包,这是第一步,但是要想使用net
start这样的方式启动, 还需要将该exe注册到服务里面去,使用exe install完成。

 

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

#SmallestService.py 

#AsampledemonstratingthesmallestpossibleservicewritteninPython. 

 

importwin32serviceutil 

importwin32service 

importwin32event 

 

classSmallestPythonService(win32serviceutil.ServiceFramework): 

    _svc_name_="SmallestPythonService"

    _svc_display_name_="ThesmallestpossiblePythonService"

    def__init__(self,args): 

        win32serviceutil.ServiceFramework.__init__(self,args) 

        #Createaneventwhichwewillusetowaiton. 

        #The"servicestop"requestwillsetthisevent. 

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

 

  defSvcStop(self): 

     #Beforewedoanything,telltheSCMwearestartingthestopprocess. 

        self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING) 

        #Andsetmyevent. 

        win32event.SetEvent(self.hWaitStop)

    defSvcDoRun(self):

        #把你的程序代码放到这里就OK了

        win32event.WaitForSingleObject(self.hWaitStop,win32event.INFINITE)

if__name__==‘__main__‘:

    win32serviceutil.HandleCommandLine(SmallestPythonService)

  

将python的程序包装成windows下的service,布布扣,bubuko.com

时间: 2024-08-25 06:34:43

将python的程序包装成windows下的service的相关文章

将Python脚本文件包装成可执行文件

将Python脚本文件包装成可执行文件,其目的有二: 一则: 不需要依赖Python编译器就可以运行软件 二则: 不想让自己的源码公布出去 常用的工具有: py2exe.cx_freeze等 [工具:py2exe] 安装py2exe 安装该工具很简单: 只需要从官方网站:http://www.py2exe.org/下载与版本对应的安装程序,点击下一步即可完成安装. 安装后,执行import py2exe,不报错则表示安装成功! >>> import py2exe >>>

使用srvany.exe将程序安装成windows服务的详细教程

srvany.exe介绍 srvany.exe是Microsoft Windows Resource Kits工具集的一个实用的小工具,用于将任何EXE程序作为Windows服务运行.也就是说srvany只是其注册程序的服务外壳,这个特性对于我们 来说非常实用,我们可以通过它让我们的程序以SYSTEM账户启动,或者实现随机器启动而自启动,也可以隐藏不必要的窗口,比如说控制台窗口等等. 资源下载 你可以通过下载并安装Microsoft Windows Resource Kits 获得或者直接在本文

Windows下使用service.bat安装tomcat服务, 启动停止tomcat服务

在项目开发过程中,以前只是在MyEclipse中配置.启动.停止tomcat服务器 如果只想在机器中使用tomcat服务器,而不想安装MyEclipse,可以使用service.bat 将tomcat安装到计算机中的服务管理系统services.msc,就可以使用DOS命令启动或 停止tomcat服务. 一般在tomcat的bin目录下有service.bat文件,如果没有就去下载一个有此文件 的tomcat. 一.win + R.cmd.Enter    打开cmd窗口, 此时工作目录是在C盘

把任意exe程序注册成windows系统服务

某gae代理软件每次开机都需要手动启动,就算添加成开机启动项,在win8.1下权限的管理更加严格,开机时并不能成功启动软件(无人值守时开机),因此在网上搜索把exe注册成系统服务的办法,找到论坛两个帖子,可将代理程序注册成系统服务开机自动启动而不用每次重启系统都要手动启动程序.本经验非原创,内容来自于以上两个帖子. 工具/原料 Instsrv.exe(可以给系统安装和删除服务) Srvany.exe(可以让程序以服务的方式运行) instsrv.exe——来自Windows 2000 Resou

将bat文件或exe程序注册成windows服务

命令行使用sc命令.关于sc命令的详解,请自行查看帮助(sc /?),在此只简单提及如何加入系统服务功能.加入服务:sc create ServiceName binPath= 路径 start= auto(等号后面的空格必须)删除服务:sc delete ServiceName例一:将Tomcat加入到系统服务中:sc create Tomcat binPath= F:/apache-tomcat/bin/startup.bat start= auto将Tomcat服务删除:sc delete

Python开发程序:生成环境下统计网站访问日志信息

日志实时分析系统 生产环境下有需求:要每搁五分钟统计下这段时间内的网站访问量.UV.独立IP等信息,用直观的数据表格表现出来 环境描述: 网站为Nginx服务,系统每日凌晨会对日志进行分割,拷贝到其他位置,当前日志清空 NGINX日志配置信息: http { log_format main '$remote_addr - [$time_local] "$request" ' ' - $status "User_Cookie:$guid" '; } server {

python中os模块在windows下的使用

今天学习了一下Python的os模块,主要是针对文件夹和文件路径的一系列操作. 与Python内置函数相比这里这里的函数功能更多样化,功能也更强大.但是学习过程中我发现很多函数都是只适用于unix系统,可能因为它是开源系统,涉及权限的api都是开放的缘故吧.但也正是如此,当我们再Windows上学习Python时,本来这个板块就难以理解,还具有不可操作性.学起来感觉很受打击. 所以这里把Windows上能用,且适用的函数记录下来,以便于以后复习: 1,os.lseek(fd,pos,how) 方

java程序配置成windows系统服务

分两步执行: 第一步:将java打成jar包,并用exe4j打成exe包 exe4j很好用,需要说明的是有32位和64位系统的区别.下面是一个64位配置成功的exe4j文件,打成的exe不包含jre,比jar包略大.需要服务器有java环境. success_64.exe4j 2.0 KB 1.选jar in exe mode 2.填应用名称和输出路径 3.选Console application,并填生成的exe名称 4.先点+号导入jar包,在浏览,选中应用启动时执行的类 5.填支持的jre

微信小程序云函数Windows下安装wx-server-sdk

第一次上传部署云函数时,会提示这个,建议在这之前先安装一下node.js. https://nodejs.org/en/ 下载nodejs,然后直接安装,在cmd控制台输入node -v和npm -v,这两个打印版本号的命令可以判断node和npm是否安装成功. 这时可以进行第一次上传部署云函数的操作了,如果你已经执行过了,那现在就需要手工来安装wx-server-sdk依赖了. 打开cmd控制台,进入到云函数的文件夹,然后执行: npm install --save [email protec