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


AtlAdvise

Создает связь между приемник точки подключения объекта и клиента.

Важно!

Эту функцию нельзя использовать в приложениях, выполняемых в Среда выполнения Windows.

HRESULT AtlAdvise( 
IUnknown* pUnkCP, 
IUnknown* pUnk, 
const IID& iid, 
LPDWORD pdw  
);

Параметры

  • pUnkCP
    [in] Указатель на IUnknown объекта клиент хочет подключиться.

  • панк
    [in] Указатель на IUnknown клиента.

  • iid
    [in] Идентификатор GUID точки подключения. Обычно это аналогично исходящий интерфейс, управляемый точки подключения.

  • pdw
    [out] Указатель на файл cookie, однозначно определяющее соединение.

Возвращаемое значение

Стандартное значение HRESULT.

Заметки

Приемник реализует исходящий интерфейс, поддерживаемого точкой подключения. Клиент использует файл cookie pdw чтобы удалить соединение с передачей их AtlUnadvise.

Пример

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));    

Требования

Header: atlbase.h

См. также

Другие ресурсы

Connection Point Global Functions