DRT_BOOTSTRAP_PROVIDER-Struktur (drt.h)
Die DRT_BOOTSTRAP_PROVIDER-Struktur definiert die DRT-Schnittstelle, die von einem Bootstrapanbieter implementiert werden muss.
Syntax
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;
Member
pvContext
Zeiger auf Kontextdaten, die vom Bootstraplöser definiert werden. Beim Erstellen eines Bootstrap-Resolvers muss der Entwickler den Resolver mit den erforderlichen Informationen auffüllen. häufig tritt dies als "dieser" Zeiger auf. Dieser Kontext wird an alle Kontextparameter in den vom DRT_BOOTSTRAP_PROVIDER definierten Funktionen übergeben.
Attach
Erhöht die Anzahl der Verweise für den Bootstrap-Anbieter mit einer Reihe von DRTs.
pvContext
Enthält den pvContext-Wert aus DRT_BOOTSTRAP_PROVIDER.
Detach
Verringert die Anzahl der Verweise für den Bootstrap-Anbieter mit einer Reihe von DRTs.
pvContext
Enthält den pvContext-Wert aus DRT_BOOTSTRAP_PROVIDER.
InitResolve
Wird von der DRT-Infrastruktur aufgerufen, um Konfigurationsinformationen zu anstehenden Namensauflösungen zur Verfügung zu stellen.
pvContext
Enthält den pvContext-Wert aus DRT_BOOTSTRAP_PROVIDER.
fSplitDetect
Gibt an, ob der Auflösungsvorgang für die Erkennung und Wiederherstellung von Netzwerkaufteilungen verwendet wird.
timeout
Gibt die maximale Zeit an, die eine Auflösung vor dem Timeout dauern sollte. Dieser Wert wird in Millisekunden dargestellt.
cMaxResults
Gibt die maximale Anzahl von Ergebnissen an, die während des Auflösungsvorgangs zurückgegeben werden sollen.
ResolveContext
Zeiger auf resolverspezifische Daten.
fFatalError
Wenn beim Bootstrapanbieter ein unwiederbringlicher Fehler auftritt, muss dieser Parameter auf TRUE festgelegt werden, wenn die Funktion abgeschlossen ist, damit der DRT in den fehlerhaften Zustand übergehen kann. Das HRESULT , das für die Höherschichtanwendung zum Debuggen zur Verfügung gestellt wird, wird im hr-Member der DRT_EVENT_DATA Struktur angezeigt, die dem Ereignis zugeordnet ist und den Übergang zum fehlerhaften Zustand signalisiert. Diese Bootstrapanbieterfunktion sollte nicht S_OK zurückgeben, wenn das fFatalError-Flag auf TRUE festgelegt wird.
IssueResolve
Wird von der DRT-Infrastruktur aufgerufen, um eine Auflösung auszugeben, um die Endpunkte von Knoten zu ermitteln, die bereits in der DRT-Cloud aktiv sind.
pvContext
Enthält den pvContext-Wert aus DRT_BOOTSTRAP_PROVIDER.
pvCallbackContext
Zeiger auf die Kontextdaten, die an den vom nächsten Parameter definierten Rückruf zurückgegeben werden.
Rückruf
Ein BOOTSTRAP_RESOLVE_CALLBACK, der für jedes Ergebnis und DRT_E_NO_MORE zurückruft wird.
ResolveContext
Zeiger auf resolverspezifische Daten.
fFatalError
Wenn beim Bootstrapanbieter ein unwiederbringlicher Fehler auftritt, muss dieser Parameter auf TRUE festgelegt werden, wenn die Funktion abgeschlossen ist, damit der DRT in den fehlerhaften Zustand übergehen kann. Das HRESULT , das für die Höherschichtanwendung zum Debuggen zur Verfügung gestellt wird, wird im hr-Member der DRT_EVENT_DATA Struktur angezeigt, die dem Ereignis zugeordnet ist und den Übergang zum fehlerhaften Zustand signalisiert. Diese Bootstrapanbieterfunktion sollte nicht S_OK zurückgeben, wenn das fFatalError-Flag auf TRUE festgelegt wird.
EndResolve
Beendet die Auflösung eines Endpunkts.
pvContext
Enthält den pvContext-Wert aus DRT_BOOTSTRAP_PROVIDER.
ResolveContext
Die BOOTSTRAP_RESOLVE_CONTEXT von der Resolve-Funktion des angegebenen Bootstrap-Anbieters empfangen.
Register
Registriert einen Endpunkt mit dem Bootstrappingmechanismus. Dieser Prozess ermöglicht es anderen Knoten, den Endpunkt über den Bootstraplöser zu finden.
pvContext
Enthält den pvContext-Wert aus DRT_BOOTSTRAP_PROVIDER.
pAddressList
Zeiger auf die Liste der Adressen, die beim Bootstrappingmechanismus registriert werden sollen.
Unregister
Diese Funktion hebt die Registrierung eines Endpunkts mit dem Bootstrappingmechanismus auf. Daher können andere Knoten den lokalen Knoten nicht über den Bootstraplöser finden.
pvContext
Enthält den pvContext-Wert aus DRT_BOOTSTRAP_PROVIDER.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Kopfzeile | drt.h |