NDK_FN_CLOSE_OBJECT fonction de rappel (ndkpi.h)
La fonction NdkCloseObject (NDK_FN_CLOSE_OBJECT) lance une demande de fermeture pour un objet NDK.
Syntaxe
NDK_FN_CLOSE_OBJECT NdkFnCloseObject;
NTSTATUS NdkFnCloseObject(
[in] NDK_OBJECT_HEADER *pNdkObject,
[in] NDK_FN_CLOSE_COMPLETION CloseCompletion,
[in, optional] PVOID RequestContext
)
{...}
Paramètres
[in] pNdkObject
Pointeur vers l’en-tête d’objet (NDK_OBJECT_HEADER) pour l’objet à fermer.
[in] CloseCompletion
Pointeur vers une fonction de rappel de fin de fermeture NdkCloseCompletion (NDK_FN_CLOSE_COMPLETION).
[in, optional] RequestContext
Valeur de contexte pour le fournisseur NDK à transmettre à la fonction NdkCloseCompletion spécifiée dans le paramètre CloseCompletion .
Valeur retournée
La fonction NdkCloseObject retourne l’un des codes NTSTATUS suivants.
Code de retour | Description |
---|---|
|
L’objet NDK est fermé. Le fournisseur n’appelle pas la fonction NdkCloseCompletion . |
|
La requête est en attente, le fournisseur appelle la fonction NdkCloseCompletion pour terminer l’opération de manière asynchrone. La demande de fermeture a été lancée avec succès, mais elle n’est peut-être pas terminée. |
|
Une erreur est survenue. |
Remarques
La table de répartition de fonction pour chaque type d’objet NDK inclut un pointeur de fonction NDK_FN_CLOSE_OBJECT . Les demandes de fermeture sont asynchrones. Un consommateur NDK ne doit pas accéder à l’objet après le démarrage d’une demande de fermeture.
Le fournisseur NDK doit s’assurer que la fonction NdkCloseCompletion (NDK_FN_CLOSE_COMPLETION) est le dernier rappel appelé pour l’objet qui se ferme. Le fournisseur doit s’assurer que toutes les demandes asynchrones en attente sont terminées et que tous les rappels en cours sont retournés et que les rappels supplémentaires sont empêchés avant que le fournisseur appelle la fonction NdkCloseCompletion . Une fois que le fournisseur a appelé la fonction NdkCloseCompletion , le fournisseur n’appelle aucune fonction d’achèvement ou de rappel de notification pour l’objet.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Aucune prise en charge, prise en charge dans NDIS 6.30 et versions ultérieures. |
Serveur minimal pris en charge | Windows Server 2012 |
Plateforme cible | Windows |
En-tête | ndkpi.h (incluez Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |