Hi everybody.
I'm new in the list�and I'm not an english speaking person.�If you�see a lot of mistakes�please excuse me I'm trying my best. I have a compiled python�service which I can install, remove, start�and stop without errors (manually). The problem ocurrs when I change the start type and set it to "auto". Then I restart my computer to see if the service starts correctly. I see two errors informed by the service control manager: 1)Timeout (30000 ms.)�for connection to�WBEM Inv service. And right after that. 2)The service did not responde to the start or control request in a timely fashion. If I go and perform an explicit start, keeping the start type in auto, the service starts and no errors are informed. I don't understand why the operating system can not start the service by itself. This is the output for "sc interrogate" on my service�in case it helps: SERVICE_NAME: WBEMInv ������� TYPE�������������� : 10� WIN32_OWN_PROCESS ������� STATE������������� : 4� RUNNING ������������������������������� (STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN) ������� WIN32_EXIT_CODE��� : 0� (0x0) ������� SERVICE_EXIT_CODE� : 0� (0x0) ������� CHECKPOINT�������� : 0x0 ������� WAIT_HINT��������� : 0x0 My python code: import win32serviceutil import win32service import win32event import servicemanager import os def system(): ���� # my system implementation. class XmlRPCService(win32serviceutil.ServiceFramework): ��� _svc_name_ = 'WBEMInv' ��� _svc_display_name_ = "WBEM Inventory" ��� _svc_description_ = 'Servicio xml rpc para realizar inventario de ordenadores conectados a redes hibridas' ��� def __init__(self, args): ���������key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE,"SOFTWARE\\UCf\\WBEMInv\\Settings") ���������path = _winreg.EnumValue(key, 0)[1] ���������os.chdir(path) # I dont want�the�working directory to be system32. ��������� _winreg.CloseKey(key) �������� win32serviceutil.ServiceFramework.__init__(self, args) ������� self.hWaitStop = win32event.CreateEvent(None, 0, 0, None) ��� def SvcStop(self): ������� self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING) ������� sys.stopservice = "true" ������� win32event.SetEvent(self.hWaitStop) ��� def SvcDoRun(self): ������� system() ��� if __name__=='__main__': ���� win32serviceutil.HandleCommandLine(XmlRPCService) Thank you very much. Boris. --- Convencion Internacional de Psicologia y Ciencias Sociales y Humanas Cienfuegos, Cuba, del 19 al 22 de abril del 2011 http://promociondeeventos.sld.cu/hominis2011
_______________________________________________ python-win32 mailing list python-win32@python.org http://mail.python.org/mailman/listinfo/python-win32