Compartir a través de


Función NdisMCmDeactivateVc (ndis.h)

NdisMCmDeactivateVc notifica a NDIS que no habrá más transferencias en un VC activo determinado.

Sintaxis

NDIS_STATUS NdisMCmDeactivateVc(
  [in] NDIS_HANDLE NdisVcHandle
);

Parámetros

[in] NdisVcHandle

Especifica el identificador que identifica la credencial verificable. NDIS proporcionó este identificador al controlador MCM cuando llamó a NdisMCmCreateVc para una llamada entrante o cuando su función ProtocolCoCreateVc configuró el VC para una llamada saliente iniciada por el cliente.

Valor devuelto

NdisMCmDeactivateVc puede devolver una de las siguientes opciones:

Código devuelto Descripción
NDIS_STATUS_SUCCESS
NDIS marcó el VC como inactivo.
NDIS_STATUS_NOT_ACCEPTED
La vc ya está desactivada, por lo que esta llamada es redundante.

Observaciones

Un controlador MCM llama a NdisMCmDeactivateVc como un paso esencial para cerrar una llamada, normalmente después del intercambio de paquetes con componentes de red que rompen la conexión.

Una llamada correcta a NdisMCmDeactivateVc permite que el controlador MCM descarte los parámetros de llamada actuales para las transferencias en el VC, posiblemente reinicializándolos para miniportar valores predeterminados determinados por el controlador. Sin embargo, si la vc se reactiva posteriormente para otra llamada, el cliente proporcionará nuevos parámetros de llamada al controlador de miniport.

El NdisVcHandle pasado a NdisMCmDeactivateVc sigue siendo válido después de que se complete la desactivación de VC. La desactivación de cualquier VC permite a su creador reinicializar el VC para reutilizarlo o destruirlo:

  • Después de la desactivación de VC y el cierre de la llamada, un cliente puede reutilizar un VC que creó originalmente para realizar otra llamada con NdisClMakeCall, o puede llamar a NdisCoDeleteVc, lo que provoca una llamada a la función ProtocolCoDeleteVc del controlador MCM .
  • Después de la desactivación de VC y el cierre de la llamada, un controlador MCM puede reutilizar un VC que creó originalmente para indicar otra llamada entrante al mismo cliente con NdisMCmDispatchIncomingCall, o puede llamar a NdisMCmDeleteVc.
El escritor de controladores determina si un controlador MCM tiene una función (interna) MiniportCoDeactivateVc que el controlador llama en el contexto de la desconexión de conexiones para las llamadas salientes y entrantes.

Solo los controladores de miniport orientados a la conexión que proporcionan compatibilidad integrada con la administración de llamadas pueden llamar a NdisMCmDeactivateVc. Los administradores de llamadas independientes, que se registran con NDIS como controladores de protocolo, llaman a NdisCmDeactivateVc en su lugar.

Requisitos

Requisito Valor
cliente mínimo admitido Compatible con los controladores NDIS 6.0 y NDIS 5.1 (consulte NdisMCmDeactivateVc (NDIS 5.1)) en Windows Vista. Compatible con los controladores NDIS 5.1 (consulte NdisMCmDeactivateVc (NDIS 5.1)) en Windows XP.
de la plataforma de destino de Escritorio
encabezado de ndis.h (incluya Ndis.h)
biblioteca de Ndis.lib
irQL <= DISPATCH_LEVEL
reglas de cumplimiento de DDI Irql_MCM_Function(ndis)

Consulte también

MiniportCoDeactivateVc

NdisClCloseCall

NdisClMakeCall

NdisCmDeactivateVc

NdisMCmActivateVc

NdisMCmDeleteVc

NdisMCmDispatchIncomingCall

ProtocolCmCloseCall

ProtocolCoDeleteVc