def Install(self, path): """ Installs an executable file as service. """ self.GetServiceControlManager() # Create the service schService = CreateService( self.schSCManager, # SCM database self.serviceName, # name of service self.serviceName, # service name to display SERVICE_ALL_ACCESS, # desired access SERVICE_WIN32_OWN_PROCESS, # service type SERVICE_AUTO_START, # start type SERVICE_ERROR_NORMAL, # error control type path, # path to service's binary None, # no load ordering group None, # no tag identifier None, # no dependencies None, # LocalSystem account None # no password ) if not schService: raise WinError() else: #print ("Service installed successfully") CloseServiceHandle(schService)
def __del__(self): if self.schService: CloseServiceHandle(self.schService) if self.schSCManager: CloseServiceHandle(self.schSCManager)