Метод IConnectionPoint::Advise (ocidl.h)

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

Синтаксис

HRESULT Advise(
  [in]  IUnknown *pUnkSink,
  [out] DWORD    *pdwCookie
);

Параметры

[in] pUnkSink

Указатель на интерфейс IUnknown в приемнике рекомендаций клиента. Приемник клиента принимает исходящие вызовы из точки подключения.

[out] pdwCookie

Указатель на возвращенный маркер, который однозначно идентифицирует это соединение. Вызывающий объект позже использует этот маркер для удаления подключения, передав его в метод IConnectionPoint::Unadvise . Если подключение не было установлено, это значение равно нулю.

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

Этот метод может возвращать стандартные возвращаемые значения E_OUTOFMEMORY и E_UNEXPECTED, а также следующие значения.

Код возврата Описание
S_OK
Подключение установлено, и у *pdwCookie есть маркер подключения.
E_POINTER
Недопустимое значение в pUnkSink или pdwCookie . Например, любой указатель может иметь значение NULL.
CONNECT_E_ADVISELIMIT
Достигнут лимит подключений для точки подключения. Больше подключений она принять не может.
CONNECT_E_CANNOTCONNECT
Приемник не поддерживает интерфейс, необходимый для этой точки подключения.

Комментарии

Совет устанавливает соединение между точкой подключения и приемником вызывающего абонента, идентифицированным с помощью pUnkSink.

Точка подключения должна вызвать QueryInterface , чтобы получить правильный указатель исходящего интерфейса для вызова при возникновении событий, с IID для исходящего интерфейса, управляемого точкой подключения. При передаче IID в метод IConnectionPointContainer::FindConnectionPoint возвращается указатель интерфейса на эту же точку подключения.

Примечания для разработчиков

Точка подключения должна запрашивать у указателя pUnkSink правильный исходящий интерфейс. Если запрос завершается ошибкой, этот метод должен возвращать CONNECT_E_CANNOTCONNECT.

Значение pdwCookie должно быть уникальным для каждого подключения к любому экземпляру точки подключения.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header ocidl.h

См. также раздел

IConnectionPoint