Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

all python windows service can not start{error 1053}

all python code service can install but cannot start

Error 1053: The service did not respond to the start or control request in a timely fashion".

since my service can install and start in my server. i think my code has no problem.

but i still wonder is there a solution that i can solve this error in code

my service:

import win32serviceutil
import win32service
import win32event

import time
import traceback
import os

import ConfigParser
import time
import traceback
import os
import utils_func
from memcache_synchronizer import *

class MyService(win32serviceutil.ServiceFramework):
    """Windows Service."""
    os.chdir(os.path.dirname(__file__))
    conf_file_name = "memcache_sync_service.ini"
    conf_parser = ConfigParser.SafeConfigParser()
    conf_parser.read(conf_file_name)
    _svc_name_, _svc_display_name_, _svc_description_ = utils_func.get_win_service(conf_parser)

    def __init__(self, args):
        if os.path.dirname(__file__):
            os.chdir(os.path.dirname(__file__))
        win32serviceutil.ServiceFramework.__init__(self, args)

        # create an event that SvcDoRun can wait on and SvcStop can set.
        self.stop_event = win32event.CreateEvent(None, 0, 0, None)

    def SvcDoRun(self):
        self.Run()
        win32event.WaitForSingleObject(self.stop_event, win32event.INFINITE)

    def SvcStop(self):
        self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)
        win32event.SetEvent(self.stop_event)
        LoggerInstance.log("memcache_sync service is stopped")
        self.ReportServiceStatus(win32service.SERVICE_STOPPED)
        sys.exit()

    def Run(self):
        try:
            LoggerInstance.log("\n******\n\memcache_sync_service is running, configuration: %s\n******" % (self.conf_file_name,))
            if ((not self.conf_parser.has_section('Memcache')) or
                (not self.conf_parser.has_option('Memcache', 'check_interval'))):
                LoggerInstance.log('memcache_sync_service : no Memcache service parameters')
                self.SvcStop()

            # set configuration parameters from ini configuration
            self.check_interval = self.conf_parser.getint('Memcache', 'check_interval')

            ms = MemcacheSynchronizer()
            while 1:
                ms.Sync()
                time.sleep(self.check_interval)
        except:
            LoggerInstance.log("Unhandled Exception \n\t%s" % (traceback.format_exc(),))


if __name__ == '__main__':
    win32serviceutil.HandleCommandLine(MyService)

execute result of "sc query [name]" cmd:

SERVICE_NAME: NewsMonitoringMemcacheSynchronizer

   TYPE               : 10  WIN32_OWN_PROCESS 
   STATE              : 1  STOPPED 
                           (NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
   WIN32_EXIT_CODE    : 0 (0x0)
   SERVICE_EXIT_CODE  : 0 (0x0)
   CHECKPOINT         : 0x0
   WAIT_HINT          : 0x0

update:

i can run this service with debug mode, cmd:

memcache_syn_service.py debug
like image 245
Scott 混合理论 Avatar asked Nov 20 '12 03:11

Scott 混合理论


People also ask

How do you solve error 1053 the service did not respond to the start or control request in a timely fashion?

System files are very important to keep your services and apps running properly. If some system files are missing or corrupted, you may encounter various errors like “error 1053 the service did not respond to the start or control request in a timely fashion”. So, we recommend you run an SFC or DISM scan to repair them.


2 Answers

Had the same problem using pypiwin32 (version: 220) and python (version: 3.6). I had to copy :

"\Python36-32\Lib\site-packages\pypiwin32_system32\pywintypes36.dll"

to

"\Python36-32\Lib\site-packages\win32"

for the service to start (was working in debug mode)

like image 158
Ken Avatar answered Oct 20 '22 17:10

Ken


In my case the problem was from python37.dll not being at C:\Python37-x64\Lib\site-packages\win32.

Just copy it there and it will solve the problem

like image 34
user1618465 Avatar answered Oct 20 '22 19:10

user1618465