Any feeling in marking the IUnknown-derived interface as dual in the IDL?

Revising our code, I found a curious definition in one of the .idl files:

[
    object,
    uuid(uuidhere),
    dual,
    nonextensible,
    oleautomation,
    hidden
]
interface IOurInterface : IUnknown {
    //methods here
};

How is an interface derived directly from IUnknownperhaps a dual interface? Will something break if I remove the attribute dual?

+5
source share
2 answers

In this response to another question about marshaling user Voyce , points to this article , mainly as follows:

- (IDispatch- ) dual, oleautomation ( ), , RegisterTypeLib() ( DllRegisterServer). HKCR\Interface {InterfaceId}, {00020424-0000-0000-C0000-000000000046} -. typelib, oleautomation.

+3

, , : http://msdn.microsoft.com/en-us/library/aa366807(VS.85).aspx

, IDispatch. .

, [dual] IDispatch .

, , ( , ATL), IDispatchImpl. , QI IDispatch .

, IOurInterface QI IDispatch - , , , .

, , , [dual] , IDispatch, , IDispatch?

+1

All Articles