MINIPORT_CO_DEACTIVATE_VC fonction de rappel (ndis.h)
La fonction MiniportCoDeactivateVc est requise pour les miniports orientés connexion. MiniportCoDeactivateVc est appelée par NDIS pour indiquer qu’une vc est marquée comme inutilisable.
Syntaxe
MINIPORT_CO_DEACTIVATE_VC MiniportCoDeactivateVc;
NDIS_STATUS MiniportCoDeactivateVc(
[in] NDIS_HANDLE MiniportVcContext
)
{...}
Paramètres
[in] MiniportVcContext
Spécifie le handle dans une zone de contexte allouée par le pilote miniport dans laquelle le pilote miniport conserve les informations d’état par VC. Le pilote miniport a fourni cette poignée à NDIS à partir de sa fonction MiniportCoCreateVc.
Valeur de retour
Retourner le code | Description |
---|---|
|
Indique que le pilote miniport a arrêté correctement toute communication sur la VC et l’a marqué comme inutilisable. |
|
Indique que le pilote miniport termine la requête pour arrêter la vc de manière asynchrone. Lorsque le pilote miniport a terminé l’arrêt du VC, il doit ensuite appeler NdisMCoDeactivateVcComplete pour signaler à NDIS que cette opération a été terminée. |
Remarques
MiniportCoDeactivateVc communique avec sa carte réseau pour mettre fin à toutes les communications sur ce vc (autrement dit, déprogrammer la réception ou envoyer des mémoires tampons sur la carte). Le pilote miniport doit également marquer le vc, sa zone de contexte, comme étant inactive pour empêcher toute autre communication entre la vc.
Il n’existe pas de relation un-à-un entre les appels à MiniportCoActivateVc et MiniportCoDeactivateVc. Bien que NDIS puisse appeler MiniportCoActivateVc plusieurs fois sur une seule VC, un seul appel à MiniportCoDeactivateVc est effectué pour arrêter une connexion virtuelle. Par exemple, une vc peut être réutilisée pour différents appels à l’origine de plusieurs appels à MiniportCoActivateVc.
exemples de
Pour définir une fonction MiniportCoDeactivateVc, 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 fonctions permet d'Analyse du code pour les pilotes, de vérificateur de pilotes statiques (SDV) et d’autres outils de vérification recherchent des erreurs, et il est nécessaire d’écrire des pilotes pour le système d’exploitation Windows.Par exemple, pour définir une fonction MiniportCoDeactivateVc nommée « MyCoDeactivateVc », utilisez le type de MINIPORT_CO_DEACTIVATE_VC comme indiqué dans cet exemple de code :
MINIPORT_CO_DEACTIVATE_VC MyCoDeactivateVc;
Ensuite, implémentez votre fonction comme suit :
_Use_decl_annotations_
NDIS_STATUS
MyCoDeactivateVc(
NDIS_HANDLE MiniportVcContext
)
{...}
Le type de fonction MINIPORT_CO_DEACTIVATE_VC est défini dans le fichier d’en-tête Ndis.h. Pour identifier plus précisément les erreurs lorsque vous exécutez les 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 MINIPORT_CO_DEACTIVATE_VC 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 annoter le comportement de la fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Pris en charge pour les pilotes NDIS 6.0 et NDIS 5.1 (voir MiniportCoDeactivateVc (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (voir MiniportCoDeactivateVc (NDIS 5.1)) dans Windows XP. |
plateforme cible | Windows |
d’en-tête | ndis.h (include Ndis.h) |
IRQL | <= DISPATCH_LEVEL |