Compartilhar via


IViewObject::SetAdvise

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Thismethod estabelece uma conexão entre o objeto exibição e um coletor de avisos para que a coletor de avisos pode ser notificado sobre alterações na exibição do objeto.

Syntax

HRESULT SetAdvise( 
  DWORD dwAspect, 
  DWORD advf, 
  IAdviseSink* pAdvSink
);

Parameters

  • dwAspect
    [no] Especifica a exibição para os quais a de consultoria conexão está sendo configurado.

    Os valores válidos são extraídos de enumeração DVASPECT.

  • advf
    [no] Contém um GRUPO de sinalizadores para controlar a de consultoria de conexão.

    Valores válidos vão da enumeração ADVF. No entanto, apenas o seguinte ADVF Os valores são relevantes para este método.

    Valor Descrição

    ADVF_ONLYONCE

    Faz com que o de consultoria conexão para ser destruídos depois que a primeira notificação for enviada.

    ADVF_PRIMEFIRST

    Faz com que uma notificação inicial a ser enviado regardless of se dados foi alterado de seu atual estado.

    Para obter mais informações sobre o seguinte valores, consulte o ADVF enumeração.

    ADVF_ONLYONCE e ADVF_PRIMEFIRST podem ser combinados para fornecer um chamada assíncrona para IDataObject::GetData.

  • pAdvSink
    [out] Ponteiro para o IAdviseSink interface de coletor de avisos que deve ser informados sobre as alterações.

    A NULL valor exclui qualquer de consultoria existente conexão.

Return Value

Este método oferece suporte a padrão retornar valores E_INVALIDARG e E_OUTOFMEMORY, bem como os valores a seguinte tabela.

Valor Descrição

S_OK

A de consultoria conexão foi estabelecida.

OLE_E_ADVISENOTSUPPORTED

Comunicado de notificações não estão com suporte.

DV_E_DVASPECT

Valor inválido para dwAspect.

Remarks

Um aplicativo contêiner que está solicitando uma operação desenhar em um objeto exibição também pode registrar com o SetAdvise método para ser notificado quando a apresentação do objeto a exibição alterada.

Para localizar fora sobre quando dados subjacentes de um objeto for alterado, você deve chamar IDataObject::DAdvise separadamente.

Para remover uma de consultoria existente conexão, chamar o SetAdvise método com pAdvSink Definir como NULL.

Se o objeto exibição for alterado, um chamar é feita o apropriado coletor de avisos pelo seu IAdviseSink::OnViewChange método.

Em qualquer tempo, um objeto exibição determinado pode suporte de consultoria apenas uma conexão. Portanto, quando SetAdvise é chamado e a exibição objeto é já mantendo para um ponteiro coletor de avisos, OLE libera o ponteiro existente antes que novo está registrado.

Para determinar se a plataforma oferece suporte a esta interface, consulte Determinando suporte COM APIs.

Requirements

Header Oleidl.h, oleidl.idl
Library oleaut32.lib, uuid.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

IViewObject
IAdviseSink
IAdviseSink::OnViewChange
IDataObject::DAdvise
IDataObject::GetData

Concepts

Determining Supported COM APIs