Макросы для работы с точками подключения
Эти макросы определяют карты и записи точки подключения.
Макрос | Description |
---|---|
BEGIN_CONNECTION_POINT_MAP | Помечает начало записей карты точки подключения. |
CONNECTION_POINT_ENTRY | Вводит точки подключения в карту. |
CONNECTION_POINT_ENTRY_P | (Visual Studio 2017) Аналогично CONNECTION_POINT_ENTRY, но принимает указатель на iid. |
END_CONNECTION_POINT_MAP | Помечает конец записей карты точки подключения. |
Требования
Заголовок: atlcom.h
BEGIN_CONNECTION_POINT_MAP
Помечает начало записей карты точки подключения.
BEGIN_CONNECTION_POINT_MAP(x)
Параметры
x
[in] Имя класса, содержащего точки подключения.
Замечания
Начните сопоставление точек подключения с помощью макроса BEGIN_CONNECTION_POINT_MAP, добавьте записи для каждой точки подключения с помощью макроса CONNECTION_POINT_ENTRY и завершите сопоставление с помощью макроса END_CONNECTION_POINT_MAP .
Дополнительные сведения о точках подключения в ATL см. в статье "Точки подключения".
Пример
BEGIN_CONNECTION_POINT_MAP(CPolyCtl)
CONNECTION_POINT_ENTRY(__uuidof(_IPolyCtlEvents))
END_CONNECTION_POINT_MAP()
CONNECTION_POINT_ENTRY и CONNECTION_POINT_ENTRY_P
Вводит точку подключения для указанного интерфейса в схему точки подключения, чтобы получить доступ к ней.
CONNECTION_POINT_ENTRY(iid)
CONNECTION_POINT_ENTRY_P(piid) // (Visual Studio 2017)
Параметры
iid
[in] GUID интерфейса, добавляемого на карту точки подключения.
piid
[in] Указатель на GUID добавляемого интерфейса.
Замечания
Записи точки подключения на карте используются IConnectionPointContainerImpl. Класс, содержащий карту точки подключения, должен наследоваться от IConnectionPointContainerImpl
.
Запустите карту точки подключения с помощью макроса BEGIN_CONNECTION_POINT_MAP, добавьте записи для каждой из точек подключения с помощью макроса CONNECTION_POINT_ENTRY и завершите сопоставление с помощью макроса END_CONNECTION_POINT_MAP .
Дополнительные сведения о точках подключения в ATL см. в статье "Точки подключения".
Пример
class ATL_NO_VTABLE CConnect2 :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CConnect2, &CLSID_Connect2>,
public IConnectionPointContainerImpl<CConnect2>,
public IPropertyNotifySinkCP<CConnect2>
{
public:
BEGIN_CONNECTION_POINT_MAP(CConnect2)
CONNECTION_POINT_ENTRY(IID_IPropertyNotifySink)
END_CONNECTION_POINT_MAP()
// Remainder of class declaration omitted.
END_CONNECTION_POINT_MAP
Помечает конец записей карты точки подключения.
END_CONNECTION_POINT_MAP()
Замечания
Запустите карту точки подключения с помощью макроса BEGIN_CONNECTION_POINT_MAP, добавьте записи для каждой точки подключения с помощью макроса CONNECTION_POINT_ENTRY и завершите сопоставление с помощью макроса END_CONNECTION_POINT_MAP.
Дополнительные сведения о точках подключения в ATL см. в статье "Точки подключения".
Пример
BEGIN_CONNECTION_POINT_MAP(CMyComponent)
CONNECTION_POINT_ENTRY(__uuidof(_IMyComponentEvents))
END_CONNECTION_POINT_MAP()