[python-win32] How to create a com_record?

Kevin Patterson patter001 at gmail.com
Sat Mar 15 02:43:51 CET 2008

So back to the beginning again:

There is a COM function that takes a pointer to the GUID structure as an
INPUT.  The fact that it happens to be called "GetInterface" may be
confusing matters. It just happens to be the name of the function. So lets
just say the function is:

HRESULT SomeFunction( [in] GUID* pGuid, [out, retval, iid_is(pGuid)]
IUnknown** ppUnknown);

win32com says that it needs a VT_RECORD in order to pass the GUID
information to the COM. But from previous email exchanges I can't just
deifne some GUID struct and give it to the function, I have to somehow
create a VT_RECORD of a GUID.  Its very ironic that it is so hard for me to
do this at the user script level when the low level stuff passes the GUID
around all over the place :)

>A GUID is not a COM record.  There is no IID for the GUID data type

So currently this is my biggest problem, because the early comment from Mark
implies that theres NO way I can get the data to the COM without finding the
GUID defined as a VT_RECORD somewhere (which I thought I was getting close
with the OLE, but I guess not).

On Fri, Mar 14, 2008 at 7:32 PM, Tim Roberts <timr at probo.com> wrote:

> Kevin Patterson wrote:
> >
> > Now the bad news: I can't figure out how to get a Record if the GUID
> > is not present. The one I need is in OLE. When I use the Visual C++
> > browser, I can see that the GUID struct is defined, but there is no
> > GUID for the GUID struc (ironic huh :))
> This path is going to lead nowhere.  A GUID is not a COM record.  There
> is no IID for the GUID data type.  The GUID struct is defined in
> stdole2.tlb, which has IID {00020430-0000-0000-C000-000000000046}, but I
> don't think that's enough.
> Let's step back for a moment.  What are you actually trying to do?
> GetInterface is usually only called internally by QueryInterface, and
> there are usually other ways to get one interface from another in Python.
> --
> Tim Roberts, timr at probo.com
> Providenza & Boekelheide, Inc.
> _______________________________________________
> python-win32 mailing list
> python-win32 at python.org
> http://mail.python.org/mailman/listinfo/python-win32
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/python-win32/attachments/20080314/e19d3999/attachment.htm 

More information about the python-win32 mailing list