PyIDispatch.InvokeTypes
object = InvokeTypes(dispid, lcid , wFlags , resultTypeDesc , typeDescs , args )
Invokes a DISPID, using the passed arguments and type descriptions.
Parameters
Comments
The Microsoft documentation for IDispatch should be used for all params except 'resultTypeDesc' and 'typeDescs'. 'resultTypeDesc' describes the return value of the function, and is a tuple of (type_id, flags). 'typeDescs' describes the type of each parameters, and is a list of the same (type_id, flags) tuple.
item | Description |
type_id | A valid "variant type" constant (eg, VT_I4 | VT_ARRAY, VT_DATE, etc - see VARIANT at MSDN). |
flags | One of the PARAMFLAG constants (eg, PARAMFLAG_FIN, PARAMFLAG_FOUT etc - see PARAMFLAG at MSDN). |
Example
An example from the makepy generated file for Word
class Cells(DispatchBaseClass): ... def SetWidth(self, ColumnWidth=..., RulerStyle=...): return self._oleobj_.InvokeTypes(202, LCID, 1, (24, 0), ((4, 1), (3, 1)),...)The interesting bits are
resultTypeDesc: (24, 0) - (VT_VOID, <no flags>) typeDescs: ((4, 1), (3, 1)) - ((VT_R4, PARAMFLAG_FIN), (VT_I4, PARAMFLAG_FIN))So, in this example, the function returns no value and takes 2 "in" params - ColumnWidth is a float, and RulerStule is an int.