DRT_BOOTSTRAP_PROVIDER structure (drt.h)

La structure DRT_BOOTSTRAP_PROVIDER définit l’interface DRT qui doit être implémentée par un fournisseur d’amorçage.

Note L’infrastructure DRT n’appelle pas les méthodes du fournisseur d’amorçage simultanément.
 

Syntaxe

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;

Membres

pvContext

Pointeur vers les données de contexte définies par le programme de résolution d’amorçage. Lors de la création d’un programme de résolution d’amorçage, le développeur doit remplir le programme de résolution avec les informations requises ; souvent, cela se produit sous la forme d’un pointeur « this ». Ce contexte est passé à tous les paramètres de contexte dans les fonctions définies par le DRT_BOOTSTRAP_PROVIDER.

Attach

Incrémente le nombre de références pour le fournisseur d’amorçage avec un ensemble de DRT.

pvContext

Contient la valeur pvContext de DRT_BOOTSTRAP_PROVIDER.

Detach

Décrémente le nombre de références pour le fournisseur d’amorçage avec un ensemble de DRT.

pvContext

Contient la valeur pvContext de DRT_BOOTSTRAP_PROVIDER.

InitResolve

Appelé par l’infrastructure DRT pour fournir des informations de configuration sur les résolutions de noms à venir.

pvContext

Contient la valeur pvContext de DRT_BOOTSTRAP_PROVIDER.

fSplitDetect

Spécifie si l’opération de résolution est utilisée pour la détection et la récupération du fractionnement du réseau.

délai d'expiration

Spécifie le temps maximal qu’une résolution doit prendre avant l’expiration du délai d’attente. Cette valeur est représentée en millisecondes.

cMaxResults

Spécifie le nombre maximal de résultats à retourner pendant l’opération de résolution.

ResolveContext

Pointeur vers des données spécifiques au programme de résolution.

fFatalError

Si le fournisseur d’amorçage rencontre une erreur irrécupérable, ce paramètre doit être défini sur TRUE lorsque la fonction se termine afin que la DRT passe à l’état défaillant. Le HRESULT mis à la disposition de l’application de couche supérieure pour le débogage s’affiche dans le membre hr de la structure DRT_EVENT_DATA associée à l’événement signalant la transition vers l’état défaillant. Cette fonction de fournisseur d’amorçage ne doit pas retourner S_OK si l’indicateur fFatalError a la valeur TRUE.

IssueResolve

Appelée par l’infrastructure DRT pour émettre une résolution afin de déterminer les points de terminaison des nœuds déjà actifs dans le cloud DRT.

pvContext

Contient la valeur pvContext de DRT_BOOTSTRAP_PROVIDER.

pvCallbackContext

Pointeur vers les données de contexte qui sont passées au rappel défini par le paramètre suivant.

rappel

Une BOOTSTRAP_RESOLVE_CALLBACK qui est rappelée pour chaque résultat et DRT_E_NO_MORE.

ResolveContext

Pointeur vers des données spécifiques au programme de résolution.

fFatalError

Si le fournisseur d’amorçage rencontre une erreur irrécupérable, ce paramètre doit être défini sur TRUE lorsque la fonction se termine afin que la DRT passe à l’état défaillant. Le HRESULT mis à la disposition de l’application de couche supérieure pour le débogage s’affiche dans le membre hr de la structure DRT_EVENT_DATA associée à l’événement signalant la transition vers l’état défaillant. Cette fonction de fournisseur d’amorçage ne doit pas retourner S_OK si l’indicateur fFatalError a la valeur TRUE.

EndResolve

Termine la résolution d’un point de terminaison.

pvContext

Contient la valeur pvContext de DRT_BOOTSTRAP_PROVIDER.

ResolveContext

Les BOOTSTRAP_RESOLVE_CONTEXT reçus de la fonction Resolve du fournisseur d’amorçage spécifié.

Register

Inscrit un point de terminaison avec le mécanisme de démarrage. Ce processus permet à d’autres nœuds de trouver le point de terminaison via le programme de résolution de démarrage.

pvContext

Contient la valeur pvContext de DRT_BOOTSTRAP_PROVIDER.

pAddressList

Pointeur vers la liste des adresses à inscrire auprès du mécanisme d’amorçage.

Unregister

Cette fonction annule l’inscription d’un point de terminaison avec le mécanisme d’amorçage. Par conséquent, les autres nœuds ne pourront pas trouver le nœud local via le programme de résolution d’amorçage.

pvContext

Contient la valeur pvContext de DRT_BOOTSTRAP_PROVIDER.

Spécifications

   
Client minimal pris en charge Windows 7 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
En-tête drt.h