struttura DRT_BOOTSTRAP_PROVIDER (drt.h)

La struttura DRT_BOOTSTRAP_PROVIDER definisce l'interfaccia DRT che deve essere implementata da un provider bootstrap.

Nota L'infrastruttura DRT non chiama simultaneamente i metodi del provider bootstrap.
 

Sintassi

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;

Members

pvContext

Puntatore ai dati di contesto definiti dal resolver bootstrap. Quando si crea un sistema di risoluzione bootstrap, lo sviluppatore deve popolare il sistema di risoluzione con le informazioni necessarie; spesso, questo si verifica come puntatore "questo". Questo contesto viene passato a tutti i parametri di contesto nelle funzioni definite dal DRT_BOOTSTRAP_PROVIDER.

Attach

Incrementa il numero di riferimenti per il provider Bootstrap con un set di drT.

pvContext

Contiene il valore pvContext di DRT_BOOTSTRAP_PROVIDER.

Detach

Decrementa il numero di riferimenti per il provider Bootstrap con un set di drT.

pvContext

Contiene il valore pvContext di DRT_BOOTSTRAP_PROVIDER.

InitResolve

Chiamato dall'infrastruttura DRT per fornire informazioni di configurazione sulle risoluzioni dei nomi future.

pvContext

Contiene il valore pvContext di DRT_BOOTSTRAP_PROVIDER.

fSplitDetect

Specifica se l'operazione di risoluzione viene utilizzata per il rilevamento e il ripristino di suddivisione della rete.

timeout

Specifica il tempo massimo necessario per la risoluzione prima del timeout. Questo valore è rappresentato in millisecondi.

cMaxResults

Specifica il numero massimo di risultati da restituire durante l'operazione di risoluzione.

ResolveContext

Puntatore a dati specifici del resolver.

fFatalError

Se il provider bootstrap rileva un errore irreversibile, questo parametro deve essere impostato su TRUE quando la funzione viene completata affinché DRT passi allo stato di errore. Il valore HRESULT reso disponibile per l'applicazione di livello superiore per il debug verrà visualizzato nel membro hr della struttura DRT_EVENT_DATA associata all'evento che segnala la transizione allo stato di errore. Questa funzione del provider bootstrap non deve restituire S_OK se si imposta il flag fFatalError su TRUE.

IssueResolve

Chiamato dall'infrastruttura DRT per eseguire una risoluzione per determinare gli endpoint dei nodi già attivi nel cloud DRT.

pvContext

Contiene il valore pvContext di DRT_BOOTSTRAP_PROVIDER.

pvCallbackContext

Puntatore ai dati di contesto passati al callback definito dal parametro successivo.

callback

Un BOOTSTRAP_RESOLVE_CALLBACK richiamato per ogni risultato e DRT_E_NO_MORE.

ResolveContext

Puntatore a dati specifici del resolver.

fFatalError

Se il provider bootstrap rileva un errore irreversibile, questo parametro deve essere impostato su TRUE quando la funzione viene completata affinché DRT passi allo stato di errore. Il valore HRESULT reso disponibile per l'applicazione di livello superiore per il debug verrà visualizzato nel membro hr della struttura DRT_EVENT_DATA associata all'evento che segnala la transizione allo stato di errore. Questa funzione del provider bootstrap non deve restituire S_OK se si imposta il flag fFatalError su TRUE.

EndResolve

Termina la risoluzione di un endpoint.

pvContext

Contiene il valore pvContext di DRT_BOOTSTRAP_PROVIDER.

ResolveContext

Il BOOTSTRAP_RESOLVE_CONTEXT ricevuto dalla funzione Resolve del provider bootstrap specificato.

Register

Registra un endpoint con il meccanismo di bootstrap. Questo processo consente ad altri nodi di trovare l'endpoint tramite il resolver bootstrap.

pvContext

Contiene il valore pvContext di DRT_BOOTSTRAP_PROVIDER.

pAddressList

Puntatore all'elenco di indirizzi da registrare con il meccanismo di bootstrap.

Unregister

Questa funzione annulla la registrazione di un endpoint con il meccanismo di bootstrap. Di conseguenza, altri nodi non saranno in grado di trovare il nodo locale tramite il resolver bootstrap.

pvContext

Contiene il valore pvContext di DRT_BOOTSTRAP_PROVIDER.

Requisiti

   
Client minimo supportato Windows 7 Professional [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Intestazione drt.h