MS OLE questions

Ove Kaaven ovek at arcticnet.no
Tue Jul 15 07:34:49 CDT 2003


tir, 15.07.2003 kl. 12.38 skrev Mike Hearn:
> Another question (sorry ;) - is it possible to only merge the parts that
> touch ole32.dll, and continue to use native oleaut32 and rpcrt4?

I'm not sure. I'd expect native rpcrt4 (at least the NT/2000 versions of
it) to do some stuff that Wine doesn't support, like NT LPC ports (which
is a kernel feature exported by ntdll, and as far as I know this is not
implemented in wine). Perhaps the win95/98 version of rpcrt4 has a small
chance of working.

> ie, basically - how many crosscalls are there between wine code in
> ole32, oleaut32, rpcrt4 - do your patches that add inter-thread
> marshalling depend explicitly on your typelib marshaller?

oleaut32 and ole32 has in theory completely independent marshallers, you
can use any combination as long as they use compatible transports, in
this case that both use rpcrt4's dcom stuff. So you can use Marcus's
oleaut32 code (as long as you adapt it for RPC), it doesn't matter for
ole32. Though you probably can't use native oleaut32 with builtin
rpcrt4, because like I mentioned earlier, the core of the typelib
marshaller should have been in rpcrt4, and that's where native oleaut32
expects it to be. And as you may have noticed, native ole32 uses a lot
of undocumented rpcrt4 features that I haven't figured out the exact
behaviour of.

So I guess it looks a bit grim for running any of them native, but I
suppose you could experiment.





More information about the wine-devel mailing list