Поделиться через


Макросы для работы с точками подключения

Эти макросы определяют карты и записи точки подключения.

Макрос 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()

См. также

Макросы
Глобальные функции точек подключения