only specify IUnknown/IDispatch interfaces. Then I have a suggestion:
Correct. The code before that could certainly perform QI,
but apparently it doesn't. It's be an overkill if it did - essentially
replicating the work of DispCallFunc.
I believe a pure dispinterface can only accept IDispatch and
IUnknown pointers by definition, and specifying a derived
interface in IDL instead is only syntactic sugar. After all, the
dispinterface is the implemenation of IDispatch, not the class
methods it calls within, which are implementation-specific.
Microsoft MVP [VC], MCSD
MVP VC FAQ: http://www.mvps.org/vcfaq
"Igor Tandetnik" <firstname.lastname@example.org> wrote in message
Alexander Nickolov <email@example.com> wrote:
This is a pure dispinterface, so DispInvoke is not involved.
Ah, I see. For some reason I thought IDispEvent[Simple]Impl uses
DispInvoke, but in fact it uses DispCallFunc which does not have access
type info, but only to VARTYPE constants.
With best wishes,
With sufficient thrust, pigs fly just fine. However, this is not
necessarily a good idea. It is hard to be sure where they are going to
land, and it could be dangerous sitting under them as they fly
overhead. -- RFC 1925