[python-win32] Python COM arguments types

Michael Illgner michael.illgner at googlemail.com
Thu Sep 29 16:46:06 CEST 2011


Hi folks,
I have some problems calling a specific COM method with VARIANT
parameters, the documentation of the COM library says

HRESULT LoadDispTotal(
[in] BOOL bSync, // Must be FALSE
[in] VARIANT *pvarBills, // Long array
[in] VARIANT *pvarCoins, // Long array

[out, retval] long *nRetVal // 0 if Ok, -1 if error,
);

LoadDispTotal(0, [1,2,3], [2,3,4]) does not seem to work, but i don't
know if a python sequence would be "translated" to the right COM
arguments.

The generated python code from genpy is

	def LoadDispTotal(self, bSync=defaultNamedNotOptArg,
pvarBills=defaultNamedNotOptArg, pvarCoins=defaultNamedNotOptArg):
		"""method LoadDispTotal"""
		return self._oleobj_.InvokeTypes(30, LCID, 1, (3, 0), ((3, 1),
(16396, 1), (16396, 1)),bSync
			, pvarBills, pvarCoins)

I am using python 3.2 and all other COM methods with simple parameters
seem to work on the same COM object
Any ideas what I'm doing wrong ?


Regards
Michael


More information about the python-win32 mailing list