On 11/4/2011 20:00, Jacek Caban wrote:
Hi Nikolay,

On 11/04/11 16:46, Nikolay Sivov wrote:
+    if(This->data->vtbl&&  This->data->vtbl->invoke) {
+ hres = This->data->vtbl->invoke(This->outer, id, lcid, wFlags, pdp, pvarRes, pei);
+        if (hres != E_NOTIMPL) return hres;
+    }

Using E_NOTIMPL for special meaning here seems wrong to me. DISP_E_UNKNOWNNAME could be a better choice. However, if you'd move custom invoke implementation to be the last choice, after dynamic and typelib-based values, then you could simply return whatever invoke returns.
I was thinking about additional call in vtable to use instead of is_custom to check if dispid is supposed to be handled with custom invoke. What do you think about it?

Jacek



Reply via email to