estrutura DRT_BOOTSTRAP_PROVIDER (drt.h)
A estrutura DRT_BOOTSTRAP_PROVIDER define a interface DRT que deve ser implementada por um provedor de inicialização.
Sintaxe
typedef struct drt_bootstrap_provider_tag {
PVOID pvContext;
HRESULT( )(const PVOID pvContext) *Attach;
VOID( )(const PVOID pvContext) *Detach;
HRESULT((const PVOID pvContext,BOOL fSplitDetect,ULONG timeout,ULONG cMaxResults,DRT_BOOTSTRAP_RESOLVE_CONTEXT *ResolveContext,BOOL *fFatalError) * )InitResolve;
HRESULT()(const PVOID pvContext, const PVOID pvCallbackContext,DRT_BOOTSTRAP_RESOLVE_CALLBACK callback,DRT_BOOTSTRAP_RESOLVE_CONTEXT ResolveContext,BOOL *fFatalError) * IssueResolve;
VOID( )(const PVOID pvContext,DRT_BOOTSTRAP_RESOLVE_CONTEXT ResolveContext) *EndResolve;
HRESULT()(const PVOID pvContext, const SOCKET_ADDRESS_LIST *pAddressList) * Register;
VOID( )(const PVOID pvContext) *Unregister;
} DRT_BOOTSTRAP_PROVIDER, *PDRT_BOOTSTRAP_PROVIDER;
Membros
pvContext
Ponteiro para dados de contexto definidos pelo resolvedor de inicialização. Ao criar um resolvedor de inicialização, o desenvolvedor é obrigado a preencher o resolvedor com as informações necessárias; muitas vezes, isso ocorre como um ponteiro "this". Esse contexto é passado para todos os parâmetros de contexto nas funções definidas pelo DRT_BOOTSTRAP_PROVIDER.
Attach
Incrementa a contagem de referências para o Provedor de Inicialização com um conjunto de DRTs.
pvContext
Contém o valor pvContext de DRT_BOOTSTRAP_PROVIDER.
Detach
Diminui a contagem de referências para o Provedor de Inicialização com um conjunto de DRTs.
pvContext
Contém o valor pvContext de DRT_BOOTSTRAP_PROVIDER.
InitResolve
Chamado pela infraestrutura drt para fornecer informações de configuração sobre as próximas resoluções de nomes.
pvContext
Contém o valor pvContext de DRT_BOOTSTRAP_PROVIDER.
fSplitDetect
Especifica se a operação de resolve está sendo utilizada para detecção e recuperação de divisão de rede.
tempo limite
Especifica o tempo máximo que um resolve deve levar antes de atingir o tempo limite. Esse valor é representado em milissegundos.
cMaxResults
Especifica o número máximo de resultados a serem retornados durante a operação de resolve.
ResolveContext
Ponteiro para resolver dados específicos.
fFatalError
Se o provedor de inicialização encontrar um erro irrecuperável, esse parâmetro deverá ser definido como TRUE quando a função for concluída para que o DRT faça a transição para o estado com falha. O HRESULT que é disponibilizado para o aplicativo de camada superior para depuração aparecerá no membro hr da estrutura de DRT_EVENT_DATA associada ao evento que sinaliza a transição para o estado com falha. Essa função de provedor de inicialização não deve retornar S_OK se definir o sinalizador fFatalError como TRUE.
IssueResolve
Chamado pela infraestrutura drt para emitir uma resolução para determinar os pontos de extremidade de nós já ativos na nuvem DRT.
pvContext
Contém o valor pvContext de DRT_BOOTSTRAP_PROVIDER.
pvCallbackContext
Ponteiro para os dados de contexto que são passados de volta para o retorno de chamada definido pelo próximo parâmetro.
retorno de chamada
Um BOOTSTRAP_RESOLVE_CALLBACK que é chamado de volta para cada resultado e DRT_E_NO_MORE.
ResolveContext
Ponteiro para resolver dados específicos.
fFatalError
Se o provedor de inicialização encontrar um erro irrecuperável, esse parâmetro deverá ser definido como TRUE quando a função for concluída para que o DRT faça a transição para o estado com falha. O HRESULT que é disponibilizado para o aplicativo de camada superior para depuração aparecerá no membro hr da estrutura de DRT_EVENT_DATA associada ao evento que sinaliza a transição para o estado com falha. Essa função de provedor de inicialização não deve retornar S_OK se definir o sinalizador fFatalError como TRUE.
EndResolve
Encerra a resolução de um ponto de extremidade.
pvContext
Contém o valor pvContext de DRT_BOOTSTRAP_PROVIDER.
ResolveContext
O BOOTSTRAP_RESOLVE_CONTEXT recebido da função Resolver do provedor de inicialização especificado.
Register
Registra um ponto de extremidade com o mecanismo de inicialização. Esse processo possibilita que outros nós encontrem o ponto de extremidade por meio do resolvedor de inicialização.
pvContext
Contém o valor pvContext de DRT_BOOTSTRAP_PROVIDER.
pAddressList
Ponteiro para a lista de endereços a serem registrados com o mecanismo de inicialização.
Unregister
Essa função desregista um ponto de extremidade com o mecanismo de inicialização. Como resultado, outros nós não poderão localizar o nó local por meio do resolvedor de inicialização.
pvContext
Contém o valor pvContext de DRT_BOOTSTRAP_PROVIDER.
Requisitos
Cliente mínimo com suporte | Windows 7 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
Cabeçalho | drt.h |