Timeout when calling COM objects on Windows
Wong Wah Meng-R32813
r32813 at freescale.com
Fri Dec 23 06:20:36 EST 2011
Hello there,
I am converting my VB ActiveX application written sometime back in year 2000 with python 1.5.2 to run in python 2.7.1.
My application is using RMI architecture and I am using a pythonOleRmi.py parser to exchange data/objects between the python and the VB exe.
I have no issue when my VB EXE is not running as a COM server while making python API calls where my application server is written purely in python and runs on UNIX. However, when my VB EXE is running as a COM server, this code seems hangs when I make the python API same call to the application server. Is there something that I need to change or configure in order to run this successfully? Or to make some security setting on my Windows? (My VB EXE is run on Windows 7 now, will try out if the same issue is encountered on XP next week).
Is the issue resided in the calling to the local daemon process (10.228.70.137:26000), or it is some security setting depicted in the policy.py file?
Collecting Python Trace Output...
Proxy called with: MatlMgr, getCompatibleFTCSVersions(), (), {}
Dec 23 18:41:21 OleRmiClient Timeout of 300 seconds occurred on the invocati
on of ('getAppAddress', (u'MatlMgr',), {}) to ('10.228.70.137', 26000)
pythoncom error: Python error invoking COM method.
Traceback (most recent call last):
File "C:\genesis\Enablers\Python\lib\site-packages\win32com\server\policy.py",
line 277, in _Invoke_
return self._invoke_(dispid, lcid, wFlags, args)
File "C:\genesis\Enablers\Python\lib\site-packages\win32com\server\policy.py",
line 282, in _invoke_
return S_OK, -1, self._invokeex_(dispid, lcid, wFlags, args, None, None)
File "C:\genesis\Enablers\Python\lib\site-packages\win32com\server\policy.py",
line 585, in _invokeex_
return func(*args)
File "C:\genesis\Product\Lib\PythonOleRmi.py", line 240, in Proxy
proxy = self._getProxyObj(pyserverString)
File "C:\genesis\Product\Lib\PythonOleRmi.py", line 223, in _getProxyObj
None, self._logWriter, rem_admin_addr = remAddr )
File "C:\genesis\Product\Lib\EComponent.py", line 710, in __init__
addr = self._getAppProxyAddress()
File "C:\genesis\Product\Lib\EComponent.py", line 742, in _getAppProxyAddress
addr = remAdmin.getAppAddress(self.server_name)
File "C:\genesis\Product\Lib\EComponent.py", line 611, in __call__
self._method, args, kw )
File "C:\genesis\Product\Lib\RMI.py", line 1779, in _genericInvocation
reply = self._requestReply( replyBit, (method_name, args, kw) )
File "C:\genesis\Product\Lib\RMI.py", line 1585, in _requestReply
reply = self._receive()
File "C:\genesis\Product\Lib\RMI.py", line 1677, in _receive
raise ServerReplyTimeout( self.reply_timeout)
ServerReplyTimeout: 300
Regards,
Wah Meng
More information about the Python-list
mailing list