Partager via


PROTOCOL_CL_DROP_PARTY_COMPLETE fonction de rappel (ndis.h)

La fonction ProtocolClDropPartyComplete est utilisée par les clients NDIS orientés connexion qui configurent des connexions multipoints. Ces clients doivent avoir des fonctions ProtocolClDropPartyComplete pour effectuer les opérations asynchrones qu’ils lancent avec

NdisClDropParty. Sinon, la fonction ProtocolClDropPartyComplete inscrite d’un pilote de protocole peut simplement retourner le contrôle.

Note Vous devez déclarer la fonction à l’aide du type PROTOCOL_CL_DROP_PARTY_COMPLETE . Pour plus d’informations, consultez la section Exemples suivante.
 

Syntaxe

PROTOCOL_CL_DROP_PARTY_COMPLETE ProtocolClDropPartyComplete;

void ProtocolClDropPartyComplete(
  [in] NDIS_STATUS Status,
  [in] NDIS_HANDLE ProtocolPartyContext
)
{...}

Paramètres

[in] Status

Spécifie la status finale de l’opération drop-party initiée par le client, qui peut être l’une des suivantes :

NDIS_STATUS_SUCCESS

La fête a été abandonnée. Le NdisPartyHandle qui représentait cette partie, que le client a stocké dans sa zone ProtocolPartyContext , n’est désormais pas valide.

NDIS_STATUS_FAILURE

La partie donnée était la dernière partie restante sur le vc multipoint du client. Par conséquent, le client doit appeler NdisClCloseCall pour supprimer cette partie.

[in] ProtocolPartyContext

Spécifie le handle de la zone de contexte par partie du client, que le client a initialement fourni à NDIS lorsqu’il a appelé NdisClAddParty ou NdisClMakeCall.

Valeur de retour

None

Remarques

Un appel à ProtocolClDropPartyComplete indique que le gestionnaire d’appels a terminé le traitement de la requête initiée par l’appel précédent du client à NdisClDropParty. ProtocolClDropPartyComplete peut libérer la zone de contexte par partie allouée par le client ou la préparer à la réutiliser lors d’un appel ultérieur à NdisClAddParty.

Si le client est en train de détruire un vc multipoint qu’il a créé, ProtocolClDropPartyComplete peut appeler NdisClDropParty avec n’importe quel NdisPartyHandle valide à l’une des parties restantes sur le vc multipoint actif du client. Si une seule autre partie reste sur son vc multipoint, le client doit supprimer cette partie en passant son NdisPartyHandle à NdisClCloseCall.

Exemples

Pour définir une fonction ProtocolClDropPartyComplete , vous devez d’abord fournir une déclaration de fonction qui identifie le type de fonction que vous définissez. Windows fournit un ensemble de types de fonctions pour les pilotes. La déclaration d’une fonction à l’aide des types de fonction permet à l’analyse du code pour les pilotes, au vérificateur de pilotes statiques (SDV) et à d’autres outils de vérification de trouver des erreurs. Il s’agit d’une exigence pour l’écriture de pilotes pour le système d’exploitation Windows.

Par exemple, pour définir une fonction ProtocolClDropPartyComplete nommée « MyClDropPartyComplete », utilisez le type PROTOCOL_CL_DROP_PARTY_COMPLETE comme indiqué dans cet exemple de code :

PROTOCOL_CL_DROP_PARTY_COMPLETE MyClDropPartyComplete;

Ensuite, implémentez votre fonction comme suit :

_Use_decl_annotations_
VOID
 MyClDropPartyComplete(
    NDIS_STATUS  Status,
    NDIS_HANDLE  ProtocolPartyContext
    )
  {...}

Le type de fonction PROTOCOL_CL_DROP_PARTY_COMPLETE est défini dans le fichier d’en-tête Ndis.h. Pour identifier plus précisément les erreurs lors de l’exécution des outils d’analyse du code, veillez à ajouter l’annotation Use_decl_annotations à votre définition de fonction. L’annotation Use_decl_annotations garantit que les annotations appliquées au type de fonction PROTOCOL_CL_DROP_PARTY_COMPLETE dans le fichier d’en-tête sont utilisées. Pour plus d’informations sur la configuration requise pour les déclarations de fonction, consultez Déclaration de fonctions à l’aide de types de rôles de fonction pour les pilotes NDIS.

Pour plus d’informations sur Use_decl_annotations, consultez Annotating Function Behavior.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge pour les pilotes NDIS 6.0 et NDIS 5.1 (voir ProtocolClDropPartyComplete (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (voir ProtocolClDropPartyComplete (NDIS 5.1)) dans Windows XP.
Plateforme cible Windows
En-tête ndis.h (inclure Ndis.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

NdisClAddParty

NdisClCloseCall

NdisClDropParty

NdisClMakeCall

NdisCmDropPartyComplete

NdisFreeMemory

NdisFreeToNPagedLookasideList

NdisMCmDropPartyComplete

ProtocolCmDropParty