On Tue, Oct 22, 2002 at 10:16:57AM +0200, Fabian Cenedese wrote:
Hi all
My app stumbled over a not implemented function from oleaut32.dll called DispCallFunc. It's only available as stub. I tried to find some info about this but it's an undocumented "feature". MSDN doesn't mention it at all (obviously) and on the net I could only find this short description:
ITypeInfo::Invoke (or DispInvoke) needs v-table to call-in a method. But when we are talking about pure disp-interfaces - they don't have any info about v-table, but just a mapping between DISPID and method signature. Therefore these functions would fail miserably to convey the call to pure dispinterface, but as all we know - the majority of sources(/events) interfaces are these pesky dispinterfaces. DispCallFunc is a low-level routine (that btw is used by DispInvoke and ITypeInfo::Invoke internally).
We implement ITypeInfo::Invoke already, so it should be easy to do an implementation of this one.
Check dlls/oleaut32/typelib.c::ITypeInfo_fnInvoke.
If you can provide me a small testprogram I can see whether I can implement it.
Ciao, Marcus