PROTOCOL_CM_INCOMING_CALL_COMPLETE fonction de rappel (ndis.h)
La fonction ProtocolCmIncomingCallComplete est requise. Lorsque NDIS appelle cette fonction, ProtocolCmIncomingCallComplete indique au gestionnaire d’appels que le client orienté connexion a terminé le traitement d’une offre d’appel entrante que le gestionnaire d’appels a précédemment distribuée via NdisCmDispatchIncomingCall.
Syntaxe
PROTOCOL_CM_INCOMING_CALL_COMPLETE ProtocolCmIncomingCallComplete;
void ProtocolCmIncomingCallComplete(
[in] NDIS_STATUS Status,
[in] NDIS_HANDLE CallMgrVcContext,
[in] PCO_CALL_PARAMETERS CallParameters
)
{...}
Paramètres
[in] Status
Indique la status finale de l’opération pour distribuer un appel entrant à un client orienté connexion.
[in] CallMgrVcContext
Spécifie le handle d’une zone de contexte allouée par le gestionnaire d’appels dans laquelle le gestionnaire d’appels conserve son état par VC. Le gestionnaire d’appels a fourni ce handle à partir de sa fonction ProtocolCoCreateVc .
[in] CallParameters
Pointeur vers les paramètres d’appel spécifiés par le gestionnaire d’appels dans l’appel à NdisCmDispatchIncomingCall. Le protocole de signalisation détermine les paramètres d’appel, le cas échéant, que le gestionnaire d’appels peut modifier.
Valeur de retour
None
Remarques
Lorsque le client orienté connexion a terminé le traitement d’une offre de connexion entrante que le gestionnaire d’appels lui a envoyée, cette routine est appelée si NdisCmDispatchIncomingCall a retourné NDIS_STATUS_PENDING. La status finale de l’appel entrant se trouve dans État. Les valeurs possibles pour Status incluent, mais ne sont pas limitées à :
Si le client accepte l’appel entrant, le gestionnaire d’appels doit envoyer des messages de signalisation pour indiquer à l’entité appelante que l’appel a été accepté. Si le client n’accepte pas l’appel, le gestionnaire d’appels doit envoyer des messages de signalisation pour indiquer que l’appel a été rejeté.
Exemples
Pour définir une fonction ProtocolCmIncomingCallComplete , 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, le vérificateur de pilotes statique (SDV) et d’autres outils de vérification de trouver les erreurs, et 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 ProtocolCmIncomingCallComplete nommée « MyCmIncomingCallComplete », utilisez le type PROTOCOL_CM_INCOMING_CALL_COMPLETE comme indiqué dans cet exemple de code :
PROTOCOL_CM_INCOMING_CALL_COMPLETE MyCmIncomingCallComplete;
Ensuite, implémentez votre fonction comme suit :
_Use_decl_annotations_
VOID
MyCmIncomingCallComplete(
NDIS_STATUS Status,
NDIS_HANDLE CallMgrVcContext,
PCO_CALL_PARAMETERS CallParameters
)
{...}
Le type de fonction PROTOCOL_CM_INCOMING_CALL_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_CM_INCOMING_CALL_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 ProtocolCmIncomingCallComplete (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (consultez ProtocolCmIncomingCallComplete (NDIS 5.1)) dans Windows XP. |
Plateforme cible | Windows |
En-tête | ndis.h (inclure Ndis.h) |
IRQL | <= DISPATCH_LEVEL |