On Sep 2, 10:22 am, Ian Hobson <i...@ianhobson.co.uk> wrote: > Hi All, > > I am attempting to create a Windows Service in Python. > > I have the framework (from Mark Hammond and Andy Robinason's book) > running - see below. It starts fine - but it will not stop. :( > > net stop "Python Service" > > and using the services GUI both leave the services showing it as "stopping" > > I guess this means SvcStop is called but it is not enough to get it out > of the machine. > > Does anyone know why not? > > Python 2.7 with win32 extensions, sunning on Windows 7. > > Many thanks > > Ian > > the (complete) source code is > #!/usr/bin/env python > # coding=utf8 > # service.py = testing services and Named pipes > # > import win32serviceutil > import win32service > import win32event > class PythonService(win32serviceutil.ServiceFramework): > _svc_name_ = "Python Service" > _svc_display_name_ = "Test Service in Python" > 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) > wind32event.SetEvent(self.hWaitStop) > def SvcDoRun(self): > win32event.WaitForSingleObject(self.hWaitStop,win32event.INFINITE) > if __name__ == '__main__': > win32serviceutil.HandleCommandLine(PythonService)
Looks to me like there may be a typo in your code. You probably meant win32event.SetEvent(self.hWaitStop), not wind32event. Regards, -Edward Kozlowski -- http://mail.python.org/mailman/listinfo/python-list