Jakikolwiek sens w oznaczaniu interfejsu opartego na IUnknown jako podwójnego w IDL?

Przeglądając nasz kod, znalazłem ciekawą definicję w jednym z plików .idl:

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

Jak można uzyskać interfejs bezpośrednio zIUnknown być może podwójnym interfejsem? Czy coś się zepsuje, jeśli usunędual atrybut?

questionAnswers(2)

yourAnswerToTheQuestion