[python-win32] COM question

Robert Olson olson@mcs.anl.gov
Mon, 30 Sep 2002 09:23:00 -0500


I've tried on and off to use pythonCOM to access the control software for a 
Gentner AP device (cf www.clearone.com). I ran into problems, and ended up 
getting the following response from the vendor:

>We have looked at the problem and and it relates to how automation works
>with late binding languages such as VB. APServe was not written to be
>friendly with these languages.  The call "Unit.CreateMeter(CHANNEL_1,
>METERTYPE_LVL, GRP_I, Meter)" last argument (meter) is passed in "ByVal".
>VB's code completion sees this APServe COM interface method as ByVal because
>VB does not allow the Interface pointer, Meter, to be "Set" through the
>argument list via instantiation of the COM object, COMAPMeter.
>
>The call will work fine with launguges such as Visual C++ or Delphi.  We did
>not intend to have users writing software utilizing that interface and
>therefore did not add the support in APServe.  Unfortunutly, I do not know
>of a work around for this problem.  I am not familiar enough with Python to
>make any recomendations there either.

I'm wondering if that explanation makes sense, and if there's a way python 
could still be used (I'm pretty shaky on the actual details of COM under 
the covers).

thanks,
--bob