Python Forum

Full Version: How to call COM-method using comtypes
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I'm using comtypes to call a COM method (with no arguments), however I get an "exception: access violation reading".
When using win32com it Works:
import win32com.client
import pywintypes
result=win32com.client.Dispatch("{9275351B-0F06-366F-A560-933FED81FECF}")
result.AutomationMyType()
Result:
Output:
('text1', 'text2',...,'text99')
When using comtypes it doesn't work:
import comtypes
import comtypes.client as cc
tlb_id = comtypes.GUID("{40B0E4AB-2B70-4142-91A3-839CD72EA140}")
cc.GetModule((tlb_id, 1, 0))
obj=cc.CreateObject("ActLifeVBA.VBA.AutomationAktuar")
obj.AutomationMyType()
Result:
Error:
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Program Files\Python37\lib\site-packages\comtypes\safearray.py", line 223, in __ctypes_from_outparam__ return self[0] File "C:\Program Files\Python37\lib\site-packages\comtypes\safearray.py", line 214, in __getitem__ return self.unpack() File "C:\Program Files\Python37\lib\site-packages\comtypes\safearray.py", line 260, in unpack for d in range(1, dim+1)] File "C:\Program Files\Python37\lib\site-packages\comtypes\safearray.py", line 260, in <listcomp> for d in range(1, dim+1)] File "C:\Program Files\Python37\lib\site-packages\comtypes\_safearray.py", line 97, in SafeArrayGetLBound _SafeArrayGetLBound(pa, dim, result) OSError: exception: access violation reading 0x0000020C5073FFFC
Any ideas?