Macros de ponto de conexão
Essas macros definem mapas e entradas do ponto de conexão.
Macro | Descrição |
---|---|
BEGIN_CONNECTION_POINT_MAP | Marca o início das entradas do mapa do ponto de conexão. |
CONNECTION_POINT_ENTRY | Insere pontos de conexão no mapa. |
CONNECTION_POINT_ENTRY_P | (Visual Studio 2017) Semelhante a CONNECTION_POINT_ENTRY, mas leva um ponteiro para iid. |
END_CONNECTION_POINT_MAP | Marca o final das entradas do mapa do ponto de conexão. |
Requisitos
Cabeçalho: atlcom.h
BEGIN_CONNECTION_POINT_MAP
Marca o início das entradas do mapa do ponto de conexão.
BEGIN_CONNECTION_POINT_MAP(x)
Parâmetros
x
[entrada] O nome da classe que contém os pontos de conexão.
Comentários
Inicie o mapa do ponto de conexão com a macro BEGIN_CONNECTION_POINT_MAP, adicione entradas para cada um dos pontos de conexão com a macro CONNECTION_POINT_ENTRY e conclua o mapa com a macro END_CONNECTION_POINT_MAP.
Para obter mais informações sobre pontos de conexão na ATL, consulte o artigo Pontos de Conexão.
Exemplo
BEGIN_CONNECTION_POINT_MAP(CPolyCtl)
CONNECTION_POINT_ENTRY(__uuidof(_IPolyCtlEvents))
END_CONNECTION_POINT_MAP()
CONNECTION_POINT_ENTRY e CONNECTION_POINT_ENTRY_P
Insere um ponto de conexão para a interface especificada no mapa do ponto de conexão para que ele possa ser acessado.
CONNECTION_POINT_ENTRY(iid)
CONNECTION_POINT_ENTRY_P(piid) // (Visual Studio 2017)
Parâmetros
iid
[entrada] O GUID da interface que está sendo adicionada ao mapa do ponto de conexão.
piid
[entrada] Ponteiro para o GUID da interface que está sendo adicionada.
Comentários
As entradas de ponto de conexão no mapa são usadas pelo IConnectionPointContainerImpl. A classe que contém o mapa do ponto de conexão deve herdar de IConnectionPointContainerImpl
.
Inicie o mapa do ponto de conexão com a macro BEGIN_CONNECTION_POINT_MAP, adicione entradas para cada um dos pontos de conexão com a macro CONNECTION_POINT_ENTRY e conclua o mapa com a macro END_CONNECTION_POINT_MAP.
Para obter mais informações sobre pontos de conexão na ATL, consulte o artigo Pontos de Conexão.
Exemplo
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
Marca o final das entradas do mapa do ponto de conexão.
END_CONNECTION_POINT_MAP()
Comentários
Inicie o mapa do ponto de conexão com a macro BEGIN_CONNECTION_POINT_MAP, adicione entradas para cada um dos pontos de conexão com a macro CONNECTION_POINT_ENTRY e conclua o mapa com a macro END_CONNECTION_POINT_MAP.
Para obter mais informações sobre pontos de conexão na ATL, consulte o artigo Pontos de Conexão.
Exemplo
BEGIN_CONNECTION_POINT_MAP(CMyComponent)
CONNECTION_POINT_ENTRY(__uuidof(_IMyComponentEvents))
END_CONNECTION_POINT_MAP()