Compiler Error C3732
TOC
Collapse the table of content
Expand the table of content

Compiler Error C3732

'interface': a custom interface that fires COM events cannot inherit from IDispatch

An interface that supports COM events cannot inherit from IDispatch. For more information, see Event Handling in COM.

The following error generates 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()
{
}

Community Additions

ADD
Show:
© 2016 Microsoft