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.
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 |