在为从我的类触发的事件实现连接点时,我dispinterface
在 IDL 中声明了一个,如下所示
[
uuid(123-MY-GENERATED-GUID)
]
dispinterface _IMyChangeEvents {
properties:
methods:
[id(1)] void ItemChanged([in] BSTR changeInformation);
};
根据几个来源,包括“ATL Internals”一书,这应该产生一个DIID__IMyChangeEvents
我可以用来从ATL::IConnectionPointImpl<ImplClass, IID>
. 但它既不存在,也不能 按照文档中的说明__uuidof(_IMyChangeEvents)
在CONNECTION_POINT_ENTRY
宏中使用,因为它抱怨“没有 GUID 与此对象关联”。
实现这一点的正确方法是什么?