BIND_OPTS2
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