Partager via


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
STATUS_SUCCESS
L’objet NDK est fermé. Le fournisseur n’appelle pas la fonction NdkCloseCompletion .
STATUS_PENDING
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.
Autres codes status
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

Voir aussi

Exigences relatives à la durée de vie des objets NDKPI

NDK_CONNECTOR_DISPATCH

NDK_CQ_DISPATCH

NDK_FN_CLOSE_COMPLETION

NDK_OBJECT_HEADER