Hello all,
I have created a COM server in python, a type library and associated it with my python com server. I am able to access the com server from excel, vbs, python, TCL, etc. But not labview. The IDispatch interface seems to be working to the extent I've tested it... for example, GetIDsOfNames works. I presume it is the IDispatch interface which labview uses to automate stuff.
According to labview the COM server cannot be found. I get the following error:
---
Error -2147221164 occurred at Automation Open
This error code is undefined. No one has provided a description for this code, or you might have wired a number that is not an error code to the error code input.
---
which is REGDB_E
_CLASSNOTREG = &H80040154
From the labview side of things, the only difference I can tell between my COM server which fails to work and a working COM server like excel is when picking a com server to use there is some additional information in parathesis after the object I can create, like so:
Type Library: Microsoft Excel 9.0 Object Library Version 1.3
Objects: Application (Excel.Application.9)
Here we have this extra info (Excel.Application.9), and I wonder if it is required for labview to find the com server. With my COM sever all I get is:
Type Library: TestComServer 1.0 Type Library Version 1.0
Objects: TestCom
So I wonder where the information in the parathesis comes from. Perhaps I have something incorrected in my .IDL file used to create the type library which should provide this information? The type library definitely seems to be registered as I see it from both labview and oleview.
To help me troubleshoot, can someone tell me the API calls the 'Autom
ation Open' block runs? Perhaps if I know the exact API call failing I can fix the problem if it is with my server or at least replicate it in a vbs script.
73,
Timothy