Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Alleen de verbindingsgerichte client, oproepmanager of MCM-stuurprogramma waarmee het maken van een virtueel circuit (VC) is gestart, kan de verwijdering van die VC initiëren. Een client verwijdert daarom een VC die eerder is gemaakt voor een uitgaande oproep, een gespreksmanager of MCM-stuurprogramma verwijdert een VC die eerder is gemaakt voor een binnenkomende oproep via het netwerk en een oproepbeheerder verwijdert een VC die eerder is gemaakt voor het uitwisselen van signaleringsberichten via het netwerk. (Een MCM-stuurprogramma roept NDIS niet aan om een VC te verwijderen die is gemaakt voor het uitwisselen van signaleringsberichten. Het MCM-stuurprogramma verwijdert een dergelijke VC met een interne bewerking die ondoorzichtig is voor NDIS.)
Een client of gespreksbeheerder die gericht is op verbindingen initieert het verwijderen van een VC met NdisCoDeleteVc.
In de volgende afbeelding ziet u een client van een oproepbeheerder die de verwijdering van een VC initieert.
In de volgende afbeelding ziet u een client van een MCM-stuurprogramma dat de verwijdering van een VC initieert.
In de volgende afbeelding ziet u een callmanager die het verwijderen van een VC initieert.
Wanneer een client of gespreksmanager NdisCoDeleteVc aanroept of wanneer een MCM-stuurprogramma NdisMCmDeleteVcaanroept, moet er geen openstaande aanroepen zijn op de opgegeven VC en dat VC al is gedeactiveerd. Om aan deze vereisten te voldoen, betekent dit dat aan de volgende voorwaarden wordt voldaan:
De client heeft al NdisClCloseCall- aangeroepen met de opgegeven NdisVcHandle- en de close-callaanvraag is succesvol voltooid.
De oproepbeheerder heeft al NdisCmDeactivateVc of het MCM-stuurprogramma heeft al NdisMCmDeactivateVc- aangeroepen met de opgegeven NdisVcHandle- en de deactiveringsaanvraag is voltooid (zie Binnenkomende aanvraag om een oproep te sluiten).
De aanroep van een client of oproepbeheerder naar NdisCoDeleteVc zorgt ervoor dat NDIS zowel de MiniportCoDeleteVc-functie als de ProtocolCoDeleteVc-functie van de client of oproepbeheerder aanroept waarmee de aanroeper de NdisVcHandle deelt (zie de drie voorgaande figuren).
MiniportCoDeleteVc bevrijdt alle middelen die zijn toegewezen voor de VC, evenals de stuurprogrammacontext van de miniport voor de VC. ProtocolCoDeleteVc maakt alle resources vrij die de client of het oproepbeheer heeft gebruikt om bewerkingen uit te voeren en de status bij te houden voor het virtuele circuit. Zowel MiniportCoDeleteVc als ProtocolCoDeleteVc zijn synchrone functies die geen NDIS_STATUS_PENDING kunnen retourneren.
Een MCM-stuurprogramma initieert het verwijderen van een VC met NdisMCmDeleteVc(zie de volgende afbeelding).
De aanroep door een MCM-stuurprogramma naar NdisMCmDeleteVc zorgt ervoor dat NDIS de functie ProtocolCoDeleteVc van de client aanroept waarmee het MCM-stuurprogramma de NdisVcHandle heeft gedeeld.
Wanneer NdisCoDeleteVc of NdisMCmDeleteVc het besturingselement retourneert, is de NdisVcHandle- niet meer geldig.