COM outproc & CFProxy unhandled interface for IRunnableObject

Robert Shearman rob at codeweavers.com
Thu Jul 22 07:12:04 CDT 2004


Jeroen Janssen wrote:

>Hello,
>
>I'm trying to run 2 programs:
>1) is a COM server program
>2) is a COM client program
>
>Now, program 2) tries to access a COM component from 1) (outproc).
>
>It seems some marshalling is being done, but eventually I get:
>
>fixme:ole:CFProxy_QueryInterface Unhandled interface:
>{00000126-0000-0000-c000-000000000046}
>
>This interface seems to be IRunnableObject.
>
>Now I'm not exactly sure how this is supposed to work, or even if this is
>the reason why my test currently fails. I can provide more logging/info if
>I know what exactly to provide.
>

IRunnableObject does not have anything to do with COM marshalling; it is 
an OLE thing. MSDN says this about it: "The *IRunnableObject *interface 
enables a container to control the running of its embedded objects". So 
basically, I don't see any reason why CFProxy (IClassFactory proxy) 
should implement it. Therefore, I suspect this message is just 
distracting you from the real source of the problem (and you don't state 
what the problem is).

>Note that I tried a small outproc client/server test that seems to go ok
>without this error, so the 'basic' outproc mechanism seems to work ok.
>  
>

Good.

>Can someone provide more information on how wine deals with Outproc COM?
>

Mike Hearn posted a really good outline of COM to wine-devel a week or 
two ago. I suggest that you read that first, but feel free to ask any 
specific questions.

>On a side note, what are the main differences in COM implementation
>between wine and winex (if I understand correctly, Transgaming rewrote the
>COM implemenation for winex in order to better support the InstallShield
>installer?).
>  
>

Ove from Transgaming has donated their COM implementation to wine 
(several years ago), and Mike Hearn and I are trying to find a way to 
merge it that:
1) Improves our (D)COM implementation
2) Doesn't introduce any regressions
3) Has the right architecture to build upon for future features

Rob




More information about the wine-devel mailing list