Compartir a través de


Error del compilador C3732

'interfaz': una interfaz personalizada que desencadena eventos COM no se puede derivar de IDispatch

Una interfaz que admite eventos COM no se puede heredar de IDispatch. Para obtener más información, consulte Control de eventos en COM.

El siguiente error genera el error C3732:

// C3732.cpp
#define _ATL_ATTRIBUTES 1
#include "atlbase.h"
#include "atlcom.h"

[module(name="test")];

// to resolve this C3732, use dual instead of object
// or inherit from IUnknown
[ object ]
__interface I : IDispatch
{
};

[ event_source(com), coclass ]
struct A
{
   __event __interface I;   // C3732
};

int main()
{
}