Compartilhar via


IBindCtx

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa interface fornece acessar para um contexto BIND, que é um objeto que armazena informações sobre uma operação ligação moniker específico.

Você transmitir um contexto BIND como um parâmetro quando chamado muitos métodos da IMoniker interface e em certas funções relacionado para identificadores de origem.

Um contexto BIND inclui o seguinte informações:

  • A BIND_OPTS estrutura que contém um conjunto de parâmetros que não alteração durante a operação ligação. Quando uma composição moniker está ligado, cada componente usa o mesmo contexto BIND, portanto, ele atua como um mecanismo para passar os mesmos parâmetros para cada componente de uma composição moniker.
  • Um conjunto de ponteiros para os objetos que a operação ligação foi ativado. O contexto BIND contém ponteiros para esses ligado objetos, mantê-las carregado e, portanto, eliminando redundante ativações se os objetos são necessário novamente durante as operações subseqüentes ligação.
  • Um ponteiro para o Running Object TABLE na máquina do processo que iniciou a operação de ligação.
    Moniker implementações que precisam acessar a tabela de objetos em execução deve usar o IBindCtx::GetRunningObjectTable método vez usando o GetRunningObjectTable função. Isso permite que aperfeiçoamentos futuros do sistema IBindCtx implementação para modificar o comportamento ligação.
  • Uma tabela de interface ponteiros, cada associado com uma chave seqüência de caracteres. Essa funcionalidade permite implementações moniker para armazenar ponteiros interface sob um conhecido seqüência de caracteres para que eles podem ser recuperados posteriormente do contexto de BIND.
    Como exemplo, OLE define vários seqüência de caracteres chaves ("ExceededDeadline", "ConnectManually" e assim por diante) que podem ser usados para armazenar um ponteiro para o objeto que causou um erro durante uma operação ligação.

Quando a implementar

Não é necessário para implementar essa interface. O sistema fornece uma IBindCtx implementação, acessível embora um chamar para o CreateBindCtx função, que é adequado para todas as situações.

Quando usar

Qualquer pessoa que escrever uma nova classe moniker Implementando o IMoniker interface deve chamar IBindCtx métodos de implementação de vários IMoniker Métodos.

Moniker provedores (servidores que mão fora monikers para identificar seus objetos) talvez também precise chamar IBindCtx Métodos de suas implementações das IOleItemContainer Ou IParseDisplayName interface.

Moniker clientes (objetos que usam identificadores de origem para adquirir interface ponteiros para outros objetos) geralmente não chamar muitos IBindCtx Métodos. Em vez disso, elas simplesmente transmitir um contexto BIND como um parâmetro em uma chamar para um IMoniker método.

Para adquirir um ponteiro interface e ativar o objeto indicado (chamado ligação para um objeto), moniker clientes geralmente faz o seguinte:

  1. Chamar o CreateBindCtx função para criar um contexto BIND e get um ponteiro para o IBindCtx interface no objeto de contexto BIND.
  2. Se desejar, embora isso seja raramente necessário, o cliente moniker pode chamar o IBindCtx::SetBindOptions método para especificar as opções BIND.
  3. Passa o contexto BIND como um parâmetro para o desejado IMoniker método (geralmente IMoniker::BindToObject).
  4. Chamar o IUnknown::Release método no contexto de BIND a versão-lo.

Embora os aplicativos que trabalhar como recipientes link (contêiner aplicativos que permitem que seus documentos para conter os objetos vinculados) são clientes moniker, eles raramente chamar IMoniker Métodos diretamente.

Geralmente, eles manipulam objetos vinculados por meio de implementação sistema (no manipulador de usar como padrão) das IOleLink interface. Essa implementação chama o apropriado IMoniker Métodos quando necessário e, ao fazer isso, passa os ponteiros para IBindCtx Interfaces em objetos de contexto BIND adequado.

Métodos

A seguinte tabela mostra os métodos para esta interface na ordem que o compilador chama os métodos. Como todas as interfaces COM, essa interface herda os métodos para a IUnknown interface.

Método IUnknown Descrição

Falha de QueryInterface

Retorna os ponteiros para com suporte interfaces.

AddRef

Incrementa a contagem de referência.

Lançamento

Diminui o contagem de referência.

Método IBindCtx Descrição

RegisterObjectBound

Registra um objeto com o contexto BIND.

RevokeObjectBound

Revoga registro de um objeto.

ReleaseBoundObjects

Libera registrados todos os objetos.

SetBindOptions

Define as opções ligação.

GetBindOptions

Recupera as opções ligação.

GetRunningObjectTable

Recupera um ponteiro para o Running Object TABLE.

RegisterObjectParam

Associa um objeto com uma chave seqüência de caracteres.

GetObjectParam

Retorna o objeto associado com uma chave seqüência de caracteres determinado.

EnumObjectParam

Enumera todas as teclas seqüência de caracteres a tabela.

RevokeObjectParam

Revoga associação entre um objeto e uma chave seqüência de caracteres.

Remarks

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

Requisitos

Header objidl.h, objidl.idl
Library ole32.lib, uuid.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

CreateBindCtx
GetRunningObjectTable
IBindCtx::EnumObjectParam
IBindCtx::GetBindOptions
IBindCtx::GetObjectParam
IBindCtx::GetRunningObjectTable
IBindCtx::RegisterObjectBound
IBindCtx::ReleaseBoundObjects
IBindCtx::RegisterObjectParam
IBindCtx::RevokeObjectBound
IBindCtx::RevokeObjectParam
IBindCtx::SetBindOptions
IMoniker
IMoniker::BindToObject
IParseDisplayName
IUnknown::AddRef
IUnknown::QueryInterface
IUnknown::Release
BIND_OPTS