NdisMCmDeleteVc destroys a caller-created VC.
NDIS_STATUS NdisMCmDeleteVc( NDIS_HANDLE NdisVcHandle );
Specifies the handle identifying the VC to be deleted. The caller originally obtained this handle from NdisMCmCreateVc.
NdisMCmDeleteVc can return one of the following:
||NDIS deleted the VC.|
||The VC is still active, so it could not be deleted.|
When an MCM driver calls NdisMCmDeleteVc, there must be no outstanding calls on the given VC and that VC must have been deactivated. To meet these requirements implies that the MCM driver has already called NdisMCmDeactivateVc with the given NdisVcHandle successfully.
Only the driver that created a particular VC can delete that VC. A call to NdisMCmDeleteVc causes NDIS to call the ProtocolCoDeleteVc function of the client with which the caller shares the NdisVcHandle .
When NdisMCmDeleteVc returns control, the NdisVcHandle is no longer valid. The MCM driver can release the resources it allocated to maintain state about the deleted VC or prepare them for reuse in a subsequent incoming-call notification after it calls NdisMCmCreateVc.
The driver writer determines whether an MCM driver has an (internal) MiniportCoDeleteVc function that the driver calls in the context of tearing down connections for outgoing and incoming calls.
Only connection-oriented miniport drivers that provide integrated call-management support can call NdisMCmDeleteVc. Stand-alone call managers and clients, which register themselves with NDIS as protocol drivers, call NdisCoDeleteVc instead.
|Windows version||Supported for NDIS 6.0 and NDIS 5.1 drivers (see NdisMCmDeleteVc (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see NdisMCmDeleteVc (NDIS 5.1)) in Windows XP.|
|Header||ndis.h (include Ndis.h)|
|DDI compliance rules||Irql_MCM_Function|