Compartilhar via


BIND_OPTS2

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa estrutura contém parâmetros usados durante uma moniker-operação ligação.

A BIND_OPTS2 estrutura é armazenada em um contexto BIND. O mesmo contexto BIND é usado por cada componente de uma composição moniker durante ligação, permitindo que os mesmos parâmetros a serem passados para todos os componentes de uma composição moniker. Para obter mais informações sobre contextos BIND, consulte IBindCtx.

BIND_OPTS2 Substitui o definidos anteriormente BIND_OPTS estrutura, incluindo os membros definidos anteriormente e adicionando quatro novos membros.

Os clientes moniker (aqueles usando um moniker para adquirir um ponteiro interface para um objeto) geralmente não é necessário especificar valores para os membros dessa estrutura.

O CreateBindCtx função cria um contexto BIND com as opções BIND definidas para valores usar como padrão que são adequados para maioria das situações. O BindMoniker função faz o mesmo ao criar um contexto BIND para uso na ligação um moniker.

Se você desejar modificar os valores desses BIND opções, você poderá fazê-lo passar um BIND_OPTS2 estrutura para o IBindCtx::SetBindOptions método. Moniker implementadores podem transmitir uma BIND_OPTS2 estrutura para o IBindCtx::GetBindOptions método para recuperar os valores de essas opções BIND.

O BIND_OPTS2 estrutura é definida em Objidl.h

Syntax

typedef struct tagBIND_OPTS2 {
  DWORD cbStruct;
  DWORD grfFlags;
  DWORD grfMode;
  DWORD dwTickCountDeadline;
  DWORD dwTrackFlags;
  DWORD dwClassContext;
  LCID locale;
  COSERVERINFO* pServerInfo;
} BIND_OPTS2, *LPBIND_OPTS2;

Os membros

  • cbStruct
    Tamanho dessa estrutura em bytes (that is, o tamanho das BIND_OPTS2 estrutura).
  • grfFlags
    Sinalizadores que aspectos controle de operações ligação moniker.

    Esse valor é qualquer combinação de sinalizadores de bit na BIND_FLAGS enumeração.

    Novos valores podem ser definidos no futuro, para implementações moniker devem ignorar bits nesse membro que eles não entendem.

    O CreateBindCtx função inicializa esse membro para zero.

  • grfMode
    Sinalizadores que devem ser usados quando abrir o arquivo que contém o objeto identificado pelo moniker.

    Os valores são tirados a partir de STGM enumeração.

    A operação ligação usa esses sinalizadores na chamar para IPersistFile::Load Ao carregar o arquivo.

    Se o objeto é execução, esses sinalizadores são ignorados por operação de ligação.

    O CreateBindCtx função inicializa esse campo para STGM_READWRITE.

  • dwTickCountDeadline
    Relógio tempo (em milissegundos, conforme retornado pelo ObterContagemMarcaEscala função) pelo qual o chamador quer a operação ligação a serem concluídas.

    Este membro permite que o limite chamador tempo de execução de uma operação quando a velocidade é de primário importância.

    Um valor de zero indica que há não prazo.

    Chamadores mais geralmente usam essa funcionalidade quando chamado a IMoniker::GetTimeOfLastChange método, embora ele pode ser útil aplicado a outras operações bem.

    O CreateBindCtx função inicializa esse membro para zero.

    Prazos típicos permitem algumas centenas de milissegundos de execução. Este prazo final é uma recomendação, não um requisito; No entanto, as operações que excedem seu prazo por uma quantidade grande pode causar atrasos para o usuário.

    Cada implementação moniker deve tentar completo sua operação pelo prazo ou falhas com o erro MK_E_EXCEEDEDDEADLINE.

    Se uma operação ligação ultrapassa seu prazo final porque um ou mais objetos que ele precisa não são execução, a implementação moniker deve registrar os Objetos responsáveis no contexto de BIND usando o IBindCtx::RegisterObjectParam.

    Os objetos devem ser registrados em nomes de parâmetro "ExceededDeadline " "ExceededDeadline1 " "ExceededDeadline2 " e assim por diante.

    Se o chamador posteriormente encontrar o objeto na tabela de objetos em execução, o chamador pode repetir a operação ligação.

    O ObterContagemMarcaEscala função indica o número de milissegundos desde inicialização sistema e quebra voltar para zero após 2 ^ 31 milissegundos. Conseqüentemente, os chamadores devem ser cuidadoso não para inadvertidamente transmitir um zero valor, que não indica nenhuma prazo e implementações moniker deve estar ciente dos problemas quebra automática relógio. Para obter mais informações, consulte o ObterContagemMarcaEscala função.

  • dwTrackFlags
    Um moniker pode usar esse valor durante rastreamento link.

    Se o original persistentes dados que o moniker faz referência foi movidos, o moniker pode tentar restabelecer o link pesquisando o original dados Embora alguns suficiente mecanismo.

    O dwTrackFlags membro fornece informações adicionais sobre como o link deve ser resolvido.

  • dwClassContext
    O contexto classe usado, extraído o CLSCTX enumeração, criar instância o objeto.

    Transmitir identificadores de origem geralmente esse valor para o dwClsContext parâmetro de CoCreateInstance.

  • localidade
    O valor LCID indicando preferência do cliente para a localidade usada pelo objeto ao qual eles são ligação.

    Um moniker passa esse valor para IClassActivator::GetClassObject.

  • pServerInfo
    Aponta para um COSERVERINFO estrutura.

    Este membro permite que os clientes chamado IMoniker::BindToObject Para especificar servidor informações.

    Os clientes podem transmitir um BIND_OPTS2 estrutura para o IBindCtx::SetBindOptions método.

    Se um nome servidor é especificado na COSERVERINFO estrutura, o BIND moniker é encaminhado para a máquina especificada.

    SetBindOptions Somente copia a estrutura Os membros do BIND_OPTS2, não o COSERVERINFO estrutura e os ponteiros que ele contém. Os chamadores podem não livre esses ponteiros até que o contexto BIND é lançado.

    Do COM nova classe moniker não aceita o pServerInfo sinalizador.

Requirements

Header objidl.h
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

BIND_FLAGS
STGM
BindMoniker
CreateBindCtx
CoCreateInstance
IClassActivator::GetClassObject
IMoniker::BindToObject
IMoniker::GetTimeOfLastChange
IPersistFile::Load
BIND_OPTS
COSERVERINFO

Other Resources

GetTickCount