Compartir a través de


Método IOleAdviseHolder::Advise (oleidl.h)

Establece una conexión de asesoramiento entre un objeto OLE y el receptor de aviso del objeto que llama. A través de ese receptor, el objeto que realiza la llamada puede recibir una notificación cuando se cambia el nombre, se guarda o se cierra el objeto OLE.

Sintaxis

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

Parámetros

[in] pAdvise

Puntero a la interfaz IAdviseSink en el receptor de asesoramiento que se debe informar de los cambios.

[out] pdwConnection

Puntero a un token que se puede pasar al método IOleAdviseHolder::Unadvise para eliminar la conexión de aviso. El objeto de llamada es responsable de llamar a IUnknown::AddRef e IUnknown::Release en este puntero.

Valor devuelto

Este método devuelve S_OK cuando funciona correctamente. Otros posibles valores devueltos son los siguientes.

Código devuelto Descripción
E_INVALIDARG
El puntero de interfaz IAdviseSink proporcionado no es válido.

Comentarios

Los contenedores, los controladores de objetos y los objetos de vínculo crean receptores de asesoramiento para recibir notificaciones de cambios en objetos de documento compuesto de interés, como objetos incrustados o vinculados. Los objetos OLE de interés para estos objetos deben implementar la interfaz IOleObject , que incluye varios métodos de asesoramiento, como IOleObject::Advise. Una llamada a este método debe configurar una conexión de asesoramiento con cualquier receptor de aviso que lo llame y mantener cada conexión hasta que se cierre. Debe ser capaz de controlar más de una conexión de asesoramiento a la vez.

IOleAdviseHolder::Advise está pensado para usarse para simplificar la implementación de IOleObject::Advise. Puede obtener un puntero a la implementación OLE de IOleAdviseHolder llamando a CreateOleAdviseHolder y, a continuación, para implementar IOleObject::Advise, simplemente delegue la llamada a IOleAdviseHolder::Advise. Otros métodos IOleAdviseHolder están diseñados para implementar otros métodos de asesoramiento de IOleObject .

Si el intento de establecer una conexión de aviso se realiza correctamente, el objeto que recibe la llamada devuelve un valor distinto de cero a través de pdwConnection. Si se produce un error en el intento, el objeto devuelve un cero. Para eliminar una conexión de asesoramiento, el objeto con el receptor de aviso devuelve este token distinto de cero al objeto llamando a IOleAdviseHolder::Advise.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado oleidl.h

Consulte también

IOleAdviseHolder

IOleAdviseHolder::EnumAdvise

IOleAdviseHolder::Unadvise

IOleObject::Advise