Función NdisCmActivateVc (ndis.h)
NdisCmActivateVc pasa parámetros de llamada proporcionados por CM, incluidos los parámetros multimedia, para una credencial verificable determinada hasta el controlador de minipuerto subyacente.
Sintaxis
NDIS_STATUS NdisCmActivateVc(
[in] NDIS_HANDLE NdisVcHandle,
[in, out] PCO_CALL_PARAMETERS CallParameters
);
Parámetros
[in] NdisVcHandle
Especifica el identificador que identifica la credencial verificable en la que se van a establecer los parámetros de llamada. El administrador de llamadas obtuvo este identificador de NdisCoCreateVc para una llamada entrante o como parámetro de entrada a su función ProtocolCoCreateVc para una llamada saliente iniciada por el cliente.
[in, out] CallParameters
Puntero a un búfer residente asignado por CM, con formato de estructura de tipo CO_CALL_PARAMETERS, que contiene todos los parámetros específicos de medios que usa el controlador de miniporte subyacente para la activación de VC.
Valor devuelto
Cuando NdisCmActivateVc devuelve algo distinto de NDIS_STATUS_PENDING, el administrador de llamadas debe realizar una llamada interna a su Función ProtocolCmActivateVcComplete . De lo contrario, NDIS llama a la función ProtocolCmActivateVcComplete de CM cuando se completa esta operación.
Comentarios
NdisCmActivateVc notifica al controlador de miniport subyacente que configure los parámetros de llamada y multimedia en un VC recién creado o para cambiar los de una credencial verificable establecida. NDIS reenvía los parámetros de llamada y el controlador vc especificados a la función MiniportCoActivateVc del controlador miniportante subyacente, que configura todos los recursos necesarios para realizar un seguimiento del estado de la credencial verificable y se convierte en una NIC lista para las transferencias de datos en la credencial verificable.
Un CM independiente siempre llama a NdisCmActivateVc después de establecer una conexión en una credencial verificable, pero antes de que se envíen o reciban datos en ese VC. Durante la conexión, una instancia de CM puede llamar a NdisCmActivateVc muchas veces con la misma NdisVcHandle como condiciones en el cambio de red o cada vez que el cliente llama a NdisClModifyCallQoS. En cada llamada de este tipo a NdisCmActivateVc, la función MiniportCoActivateVc del controlador miniport subyacente debe realizar una de las siguientes acciones:
- Actualice el estado que el controlador de miniporte mantiene sobre los parámetros de llamada a los nuevos valores proporcionados por el administrador de llamadas si el controlador de miniporte puede seguir realizando transferencias en el VC según los parámetros de llamada recién modificados.
- Se produce un error en la llamada si el controlador de minipuerto no puede continuar realizando transferencias bajo las restricciones de los parámetros de llamada especificados.
En el caso de una llamada saliente iniciada por el cliente, un CM independiente normalmente llama a NdisCmActivateVc inmediatamente después del intercambio de paquetes que confirma un acuerdo negociado con el destino remoto de la llamada o la correcta configuración de llamadas en el conmutador, antes de que notifique a NDIS (y al cliente) la finalización de la llamada saliente con NdisCmMakeCallComplete. Para una llamada entrante, un administrador de llamadas normalmente llama a NdisCmActivateVc después de llamar a NdisCoCreateVc correctamente y antes de llamar a NdisCmDispatchIncomingCall.
En el proceso de configuración de una llamada saliente y mientras cualquier vc permanece activada, el cliente puede solicitar cambios en los parámetros de llamada para esa credencial verificable, por ejemplo, llamando a NdisClModifyCallQos. Después de comprobar la validez de los parámetros de llamada especificados para cualquier solicitud de este tipo, el administrador de llamadas independiente debe llamar a NdisCmActivateVc para pasar los parámetros de llamada modificados al controlador de miniport subyacente.
Solo los administradores de llamadas independientes, que se registran con NDIS como controladores de protocolo, pueden llamar a NdisCmActivateVc. En su lugar, los controladores de minipuerto orientados a la conexión que proporcionan compatibilidad integrada con la administración de llamadas llaman a NdisMCmActivateVc .
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Compatible con los controladores NDIS 6.0 y NDIS 5.1 (consulte NdisCmActivateVc (NDIS 5.1)) en Windows Vista. Compatible con los controladores NDIS 5.1 (consulta NdisCmActivateVc (NDIS 5.1)) en Windows XP. |
Plataforma de destino | Escritorio |
Encabezado | ndis.h (incluya Ndis.h) |
Library | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | Irql_CallManager_Function(ndis) |