Hi,
I have problems with this patch, gcc complains about :
gcc -c -I. -I. -I../../include -I../../include -D_REENTRANT -fPIC -D__WINESRC__ -D_OLEAUT32_ -DCOM_NO_WINDOWS_H -Wall -mpreferred-stack-boundary=2 -gstabs+ -Wpointer-arith -g -O2 -o usrmarshal.o usrmarshal.c usrmarshal.c: In function `VARIANT_UserMarshal': usrmarshal.c:240: structure has no member named `u' usrmarshal.c:251: structure has no member named `u' usrmarshal.c:253: structure has no member named `u' usrmarshal.c: In function `VARIANT_UserUnmarshal': usrmarshal.c:294: structure has no member named `u' usrmarshal.c:298: structure has no member named `u' usrmarshal.c:309: structure has no member named `u' usrmarshal.c:312: structure has no member named `u'
a+
Max
On Sat, 2003-04-19 at 18:29, Ove Kaaven wrote:
This is the implementation of a rpcrt4-based IDispatch marshaller. It is still dead code though, the main DllGetClassObject must also be patched to use it (I can supply a patch for that if this is accepted). (Also the InstallShield hack in typelib.c would have to be removed, but that should wait until more of the DCOM infrastructure is in place.)
The oaidl_p.c is almost unmodified MIDL output generated from Wine's oaidl.idl (I only had to add an #undef __WINE__ at the top to get all the Winelib definitions, perhaps this isn't needed under Wine anymore), so it shouldn't be hard to maintain, and Alexandre once said MIDL output is acceptable as a stopgap solution. I don't know if proper InstallShield repaint support calls for stopgaps, though.
The usrmarshal.c is not so stopgap, but it's a pretty minimal implementation of the user-marshallers (wire_marshal and call_as) declared in oaidl.idl. But it's sufficient for remoting all the IDispatch that InstallShield needs.
Log: Ove Kaaven ovek@transgaming.com Preliminary implementation of proper IDispatch marshalling.
________________________________________________________________________