From 3fd021ca02cf3332c17f2cbbcac00fd308de8c15 Mon Sep 17 00:00:00 2001 From: Matias Fernandez Date: Wed, 11 Sep 2019 22:08:11 -0300 Subject: [PATCH] borrado: winservice.py --- winservice.py | 79 --------------------------------------------------- 1 file changed, 79 deletions(-) delete mode 100644 winservice.py diff --git a/winservice.py b/winservice.py deleted file mode 100644 index dea87ec..0000000 --- a/winservice.py +++ /dev/null @@ -1,79 +0,0 @@ -import win32service -import win32serviceutil -import win32api -import win32con -import win32event -import win32evtlogutil -import servicemanager -import os -import sys -from lib import const -from lib import common -from win32api import OutputDebugString as ODS -import traceback - - -const.SERVICENAME = "Test Service" -const.SERVICEDNAME = "Test Service" -const.SERVICEDESC = "Test Service Description" - -const.CHILD = [ - "C:\\Program Files\\Python36\\python.exe", - "C:\\pyvncs\\ctrlsrv.py", - "-P", - "kaka80" -] - -class service(win32serviceutil.ServiceFramework): - - _svc_name_ = const.SERVICENAME - _svc_display_name_ = const.SERVICEDNAME - _svc_description_ = const.SERVICEDESC - - def __init__(self, args): - win32serviceutil.ServiceFramework.__init__(self, args) - self.hWaitStop = win32event.CreateEvent(None, 0, 0, None) - - 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.timeout = 3000 - - servicemanager.LogInfoMsg("%s - is running 1" % const.SERVICENAME) - r = common.proc() - try: - r.run(const.CHILD) - except: - servicemanager.LogInfoMsg("ERROR: %s" % sys.exc_info()[0]) - servicemanager.LogInfoMsg(traceback.format_exc()) - sys.exit(1) - - newpid = r.getpid() - servicemanager.LogInfoMsg("%s - started child with pid %s" % (const.SERVICENAME, newpid)) - - while True: - # Wait for service stop signal, if I timeout, loop again - rc = win32event.WaitForSingleObject(self.hWaitStop, self.timeout) - # Check to see if self.hWaitStop happened - if rc == win32event.WAIT_OBJECT_0: - # Stop signal encountered - servicemanager.LogInfoMsg("%s - STOPPED" % const.SERVICENAME) - r.terminate() - break - #else: - # servicemanager.LogInfoMsg("%s - still running" % const.SERVICENAME) - - -def ctrlHandler(ctrlType): - return True - -if __name__ == '__main__': - ODS("__main__\n") - servicemanager.LogInfoMsg("TEST") - appdir = os.path.abspath(os.path.dirname(sys.argv[0])) - os.chdir(appdir) - win32api.SetConsoleCtrlHandler(ctrlHandler, True) - win32serviceutil.HandleCommandLine(service)