python最小化打开exe_用python最小化或隐藏打开程序

目的是什么?

如果希望隐藏(没有窗口)进程在后台工作,最好的方法是编写一个windows服务,并使用通常的窗口服务机制启动/停止它。Windows服务可以很容易地用python编写,例如,这里是我自己服务的一部分(如果不做一些修改,它将无法运行)import os

import time

import traceback

import pythoncom

import win32serviceutil

import win32service

import win32event

import servicemanager

import jagteraho

class JagteRahoService (win32serviceutil.ServiceFramework):

_svc_name_ = "JagteRaho"

_svc_display_name_ = "JagteRaho (KeepAlive) Service"

_svc_description_ = "Used for keeping important services e.g. broadband connection up"

def __init__(self,args):

win32serviceutil.ServiceFramework.__init__(self,args)

self.stop = False

def SvcStop(self):

self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)

self.log('stopping')

self.stop = True

def log(self, msg):

servicemanager.LogMsg(servicemanager.EVENTLOG_INFORMATION_TYPE,

servicemanager.PYS_SERVICE_STARTED,

(self._svc_name_,msg))

def SvcDoRun(self):

self.log('folder %s'%os.getcwd())

self.ReportServiceStatus(win32service.SERVICE_RUNNING)

self.start()

def shouldStop(self):

return self.stop

def start(self):

try:

configFile = os.path.join(jagteraho.getAppFolder(), "jagteraho.cfg")

jagteraho.start_config(configFile, self.shouldStop)

except Exception,e:

self.log(" stopped due to eror %s [%s]" % (e, traceback.format_exc()))

self.ReportServiceStatus(win32service.SERVICE_STOPPED)

if __name__ == '__main__':

win32serviceutil.HandleCommandLine(AppServerSvc)

你可以通过python svc_jagteraho.py--startup auto install

运行它python python svc_jagteraho.py start

我也会出现在服务列表中,例如services.msc将显示它,您可以启动/停止它,否则您可以使用命令行sc stop jagteraho

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值