I have an ATL / COM project, in VC ++ 6. I want an existing class that has never been previously defined to raise events, to raise events. For this, the class will have to implement a "connection point".
These events are of a type that no class has ever raised, so I will need to create a new join point and not reuse an existing one.
I know how to make a class an implementation of a connection point - right-click the class in the class view, select "implement connection point" and select the appropriate connection point from the displayed list.
I know how to create a new connection point, if it is associated with a new ATL class for its implementation - check "Support for connection points" when creating a class.
But I can't figure out how to create a new junction point without creating a new ATL class that implements it.
I modified the IDL to include something similar to the definitions of existing connection points:
[
uuid(*blah blah blah*),
helpstring("_IBlahEvents Interface")
]
dispinterface _IBlahEvents
{
properties:
methods:
[id(1), helpstring("method BlahChanged")] HRESULT BlahChanged();
};
(Obviously, I have a real uuid, not a "blah blah blah").
After that, the _IBlahEvents interface opens in the class. But when I right-click on the ATL class that I want to implement _IBlahEvents and select "Implement Connection Point", _BlahEvents does not appear in the list of existing connection points.
I recompiled, including cleaning and restoring everyone.
What am I missing?
Thanks.
Ptah- Opener of the Mouth