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


Метод IOleAdviseHolder::Advise (oleidl.h)

Устанавливает консультативное соединение между объектом OLE и приемником рекомендаций вызывающего объекта. Через этот приемник вызывающий объект может получать уведомление о переименовании, сохранении или закрытии объекта OLE.

Синтаксис

HRESULT Advise(
  [in]  IAdviseSink *pAdvise,
  [out] DWORD       *pdwConnection
);

Параметры

[in] pAdvise

Указатель на интерфейс IAdviseSink в приемнике рекомендаций, который должен быть проинформирован об изменениях.

[out] pdwConnection

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

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

Этот метод возвращает значение S_OK при успешном завершении. Другие возможные возвращаемые значения включают следующее.

Код возврата Описание
E_INVALIDARG
Предоставленный указатель интерфейса IAdviseSink недопустим.

Комментарии

Контейнеры, обработчики объектов и объекты ссылок советуют приемникам получать уведомления об изменениях в представляющих интерес объектах составных документов, таких как внедренные или связанные объекты. Объекты OLE, представляющие интерес для этих объектов, должны реализовывать интерфейс IOleObject , который включает несколько методов консультирования, включая IOleObject::Advise. Вызов этого метода должен настроить консультативное соединение с любым приемником рекомендаций, который вызывает его, и поддерживать каждое подключение до тех пор, пока оно не будет закрыто. Он должен иметь возможность обрабатывать несколько консультативных подключений одновременно.

IOleAdviseHolder::Advise предназначен для упрощения реализации IOleObject::Advise. Вы можете получить указатель на реализацию OLE IOleAdviseHolder, вызвав Метод CreateOleAdviseHolder, а затем, чтобы реализовать IOleObject::Advise, просто делегируйте вызов IOleAdviseHolder::Advise. Другие методы IOleAdviseHolder предназначены для реализации других методов рекомендаций IOleObject .

Если попытка установить консультативное подключение прошла успешно, объект, получающий вызов, возвращает ненулевое значение через pdwConnection. Если попытка завершается неудачно, объект возвращает ноль. Чтобы удалить консультативное соединение, объект с приемником рекомендаций передает этот ненулевой токен обратно в объект, вызвав метод IOleAdviseHolder::Advise.

Требования

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

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

IOleAdviseHolder

IOleAdviseHolder::EnumAdvise

IOleAdviseHolder::Unadvise

IOleObject::Совет