Partager via


NPI_CLIENT_DETACH_PROVIDER_FN fonction de rappel (netioddk.h)

La fonction de rappel ClientDetachProvider d’un module client détache le module client d’un module fournisseur.

Syntaxe

NPI_CLIENT_DETACH_PROVIDER_FN NpiClientDetachProviderFn;

NTSTATUS NpiClientDetachProviderFn(
  [in] PVOID ClientBindingContext
)
{...}

Paramètres

[in] ClientBindingContext

Pointeur vers le contexte du module client pour la liaison entre le module client et le module fournisseur dont il se détache. Le module client passe ce pointeur au NMR lorsqu’il appelle la fonction NmrClientAttachProvider pour l’attacher au module fournisseur.

Valeur retournée

La fonction de rappel ClientDetachProvider d’un module client retourne l’un des codes NTSTATUS suivants :

Code de retour Description
STATUS_SUCCESS
Le module client s’est correctement détaché du module fournisseur.
STATUS_PENDING
Le module client n’a pas pu se détacher immédiatement du module fournisseur.

Remarques

La NMR appelle la fonction de rappel ClientDetachProvider d’un module client chaque fois que la liaison entre le module client et un module fournisseur doit être arrêtée. Le détachement est initié par le module client appelant la fonction NmrDeregisterClient ou par le module fournisseur appelant la fonction NmrDeregisterProvider .

Une fois sa fonction de rappel ClientDetachProvider appelée, un module client ne doit plus effectuer d’appels à l’une des fonctions NPI du module fournisseur. S’il n’y a aucun appel en cours vers les fonctions NPI du module fournisseur lorsque la fonction de rappel ClientDetachProvider du module client est appelée, la fonction de rappel ClientDetachProvider du module client retourne STATUS_SUCCESS.

S’il existe des appels en cours à une ou plusieurs fonctions NPI du module fournisseur lorsque la fonction de rappel ClientDetachProvider du module client est appelée, la fonction de rappel ClientDetachProvider du module client retourne STATUS_PENDING. Dans ce cas, le module client doit appeler le Fonction NmrClientDetachProviderComplete une fois que tous les appels en cours aux fonctions NPI du module fournisseur sont terminés. L’appel à La fonction NmrClientDetachProviderComplete informe la NMR que le détachement du module fournisseur est terminé.

La RMN appelle le module clientFonction de rappel ClientCleanupBindingContext et module du fournisseurFonction de rappel ProviderCleanupBindingContext une fois que le module client et le module fournisseur se sont détachés l’un de l’autre.

La NMR appelle la fonction de rappel ClientDetachProvider d’un module client à n’importe quel irQL <= DISPATCH_LEVEL.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows Vista et versions ultérieures des systèmes d’exploitation Windows.
Plateforme cible Windows
En-tête netioddk.h (inclure Wsk.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

ClientCleanupBindingContext

NPI_CLIENT_CHARACTERISTICS

NmrClientAttachProvider

NmrClientDetachProviderComplete

NmrDeregisterClient

NmrDeregisterProvider

ProviderCleanupBindingContext