Which QueryInterface is called?
rob at codeweavers.com
Mon Jan 17 12:58:43 CST 2005
Bill Medland wrote:
>I am trying to understand what is failing in a piece of -out-of-process COM
>under Wine. Basically it is an ATL-based CreateInstance that is returning
>E_NOINTERFACE under Wine.
>Below is a cut-down copy of the trace.
>What I don't understand is which QueryInterface is being called. I don't
>totally understand what is going on in the marshalling etc. but from what I
>can see I expected to see ClientIdentity_QueryRef called and some sort of
>marshalling going on in the last stages.
>Can anyone point me at which code is probably implementing the QueryInterface?
>rclsid = __uuidof(ACCPACSignonMgr)
>CoCreateInstance (rclsid, NULL, CLSCTX_ALL, __uuidof(IUnknown), &pIUnknown);
>pIUnknown->QueryInterface (getIID(), &m_pInterface)
>pIUnknown->QueryInterface returns E_NOINTERFACE
>The interface is provided by a an object running in a local server
>Why don't I see a trace on ClientIdentity_QueryInterface?
I think we need to special-case IID_IUnknown in
StdMarshalImpl_UnmarshalInterface to just create a proxy and not try to
get the IRpcProxyBuffer for the interface.
More information about the wine-devel