>     ...
>     if type(retVal) == types.TupleType: # Like pythoncom, we special case
a tuple.
>         # However, if they want to return a specific HRESULT,
>         # then they have to return all of the out arguments
>         # AND the HRESULT.
>         if len(retVal) == len(meth._gw_out_args) + 1:
>             hr = retVal[0]
>             retVal = retVal[1:]
>         else:
>             raise TypeError, "Expected %s return values, got: %s" %
(len(meth.

> I'm not sure what the original intent was,

That looks suspect, yeah.  I suspect the intent was to have another elseif
that checked if the lengths were the same, in which case no hresult was
provided.  I'm out of time to get more context about this though, but the
greater intent is that the author of the Python COM object should not care
if they are using an IDispatch or vtable implementation of an interface, so
the same code should work in both cases.

The best thing you can do to help me move this forward would be to provide a
test case using the existing 'pippo' tests in the win32com tree.

Cheers,

Mark

_______________________________________________
Python-win32 mailing list
Python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to