NdisCmActivateVc, fonction (ndis.h)

NdisCmActivateVc transmet les paramètres d’appel fournis par CM, y compris les paramètres multimédias, pour un vc particulier jusqu’au pilote miniport sous-jacent.

Syntaxe

NDIS_STATUS NdisCmActivateVc(
  [in]      NDIS_HANDLE         NdisVcHandle,
  [in, out] PCO_CALL_PARAMETERS CallParameters
);

Paramètres

[in] NdisVcHandle

Spécifie le handle identifiant le vc sur lequel définir les paramètres d’appel. Le gestionnaire d’appels a obtenu ce handle auprès de NdisCoCreateVc pour un appel entrant ou en tant que paramètre d’entrée à sa fonction ProtocolCoCreateVc pour un appel sortant initié par le client.

[in, out] CallParameters

Pointeur vers une mémoire tampon résidente allouée par cm, mise en forme en tant que structure de type CO_CALL_PARAMETERS, contenant tous les paramètres spécifiques au média que le pilote miniport sous-jacent utilise pour l’activation vc.

Valeur retournée

Lorsque NdisCmActivateVc retourne autre chose que NDIS_STATUS_PENDING, le gestionnaire d’appels doit effectuer un appel interne à son Fonction ProtocolCmActivateVcComplete . Sinon, NDIS appelle la fonction ProtocolCmActivateVcComplete du CM lorsque cette opération est terminée.

Remarques

NdisCmActivateVc avertit le pilote miniport sous-jacent de configurer les paramètres d’appel et de média sur un vc nouvellement créé ou de modifier ceux d’un vc établi. NDIS transfère les paramètres d’appel et le handle VC donnés à la fonction MiniportCoActivateVc du pilote miniport sous-jacent, qui configure toutes les ressources nécessaires pour suivre l’état de la vc et rend elle-même et une carte réseau prête pour les transferts de données sur le vc.

Un CM autonome appelle toujours NdisCmActivateVc après avoir établi une connexion sur un vc, mais avant que des données ne soient envoyées ou reçues sur ce vc. Pendant la durée de la connexion, un cm peut appeler NdisCmActivateVc plusieurs fois avec le même NdisVcHandle lorsque les conditions sur le réseau changent et/ou chaque fois que le client appelle NdisClModifyCallQoS. À chaque appel de ce type à NdisCmActivateVc, la fonction MiniportCoActivateVc du pilote miniport sous-jacent doit effectuer l’une des opérations suivantes :

  • Mettez à jour l’état que le pilote miniport conserve à propos des paramètres d’appel aux nouvelles valeurs fournies par le gestionnaire d’appels si le pilote miniport peut continuer à effectuer des transferts sur le vc en fonction des paramètres d’appel récemment modifiés.
  • Échec de l’appel si le pilote miniport ne peut pas continuer à effectuer des transferts en fonction des contraintes des paramètres d’appel donnés.
Lorsque le pilote miniport sous-jacent échoue à une demande de définition ou de réinitialisation des paramètres d’appel, le gestionnaire d’appels peut modifier sa spécification d’origine dans CallParameters et appeler À nouveau NdisCmActivateVc . La limite du nombre de fois où un gestionnaire d’appels effectue des tentatives répétées d’activation d’un VC dépend de l’implémentation.

Pour un appel sortant initié par le client, un cm autonome appelle généralement NdisCmActivateVc immédiatement après l’échange de paquets confirmant un accord négocié avec la cible distante de l’appel ou une configuration d’appel réussie au niveau du commutateur, avant d’avertir NDIS (et le client) de l’achèvement de l’appel sortant avec NdisCmMakeCallComplete. Pour un appel entrant, un gestionnaire d’appels appelle généralement NdisCmActivateVc après avoir appelé NdisCoCreateVc avec succès et avant d’appeler NdisCmDispatchIncomingCall.

Dans le processus de configuration d’un appel sortant et tant que tout VC reste activé, le client peut demander des modifications aux paramètres d’appel pour ce VC, par exemple, en appelant NdisClModifyCallQos. Après avoir vérifié la validité des paramètres d’appel donnés pour une telle demande, le gestionnaire d’appels autonome doit appeler NdisCmActivateVc pour transmettre les paramètres d’appel modifiés au pilote miniport sous-jacent.

Seuls les gestionnaires d’appels autonomes, qui s’inscrivent auprès de NDIS en tant que pilotes de protocole, peuvent appeler NdisCmActivateVc. Les pilotes miniport orientés connexion qui fournissent une prise en charge intégrée de la gestion des appels appellent À la place NdisMCmActivateVc .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge pour les pilotes NDIS 6.0 et NDIS 5.1 (voir NdisCmActivateVc (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (consultez NdisCmActivateVc (NDIS 5.1)) dans Windows XP.
Plateforme cible Desktop (Expérience utilisateur)
En-tête ndis.h (inclure Ndis.h)
Bibliothèque Ndis.lib
IRQL <= DISPATCH_LEVEL
Règles de conformité DDI Irql_CallManager_Function(ndis)

Voir aussi

CO_CALL_PARAMETERS

MiniportCoActivateVc

NdisClMakeCall

NdisClModifyCallQos

NdisCmDeactivateVc

NdisCmDispatchIncomingCall

NdisCoCreateVc

NdisMCmActivateVc

ProtocolCmActivateVcComplete

ProtocolCoCreateVc