AtlAdvise
Cria uma conexão entre o ponto de conexão do objeto e o coletor do cliente.
HRESULT AtlAdvise(
IUnknown* pUnkCP,
IUnknown* pUnk,
const IID& iid,
LPDWORD pdw
);
Parâmetros
pUnkCP
[in] Um ponteiro para o IUnknown do objeto cliente quer conectar-se com.pUnk
[in] Um ponteiro para IUnknown.iid
[in] O GUID do ponto de conexão.Normalmente, isso é igual a interface de saída gerenciada pelo ponto de conexão.pdw
[out] Um ponteiro para o cookie que identifica exclusivamente a conexão.
Valor de retorno
Um valor HRESULT padrão.
Comentários
O coletor implementa a interface de saída suportada pelo ponto de conexão.O cliente usa o pdw cookie para remover a conexão, passando-o para AtlUnadvise.
Exemplo
LPUNKNOWN m_pSourceUnk;
LPUNKNOWN m_pSinkUnk;
DWORD m_dwCustCookie;
// create source object
HRESULT hr = CoCreateInstance (CLSID_MyComponent, NULL, CLSCTX_ALL,
IID_IUnknown, (LPVOID*)&m_pSourceUnk);
ATLASSERT(SUCCEEDED(hr));
// Create sink object. CMySink is a CComObjectRootEx-derived class
// that implements the event interface methods.
CComObject<CMySink>* pSinkClass;
CComObject<CMySink>::CreateInstance(&pSinkClass);
hr = pSinkClass->QueryInterface (IID_IUnknown, (LPVOID*)&m_pSinkUnk);
ATLASSERT(SUCCEEDED(hr));
hr = AtlAdvise (m_pSourceUnk, m_pSinkUnk, __uuidof(_IMyComponentEvents), &m_dwCustCookie);
ATLASSERT(SUCCEEDED(hr));
Requisitos
Cabeçalho: atlbase.h