NdisMCmDeactivateVc-Funktion (ndis.h)

NdisMCmDeactivateVc benachrichtigt NDIS, dass es keine weiteren Übertragungen für eine bestimmte aktive VC geben wird.

Syntax

NDIS_STATUS NdisMCmDeactivateVc(
  [in] NDIS_HANDLE NdisVcHandle
);

Parameter

[in] NdisVcHandle

Gibt den Handle an, der die VC identifiziert. Dieses Handle wurde von NDIS für den MCM-Treiber bereitgestellt, wenn er NdisMCmCreateVc für einen eingehenden Aufruf aufgerufen hat oder wenn seine ProtocolCoCreateVc-Funktion die VC für einen vom Client initiierten ausgehenden Aufruf eingerichtet hat.

Rückgabewert

NdisMCmDeactivateVc kann eine der folgenden Rückgaben geben:

Rückgabecode Beschreibung
NDIS_STATUS_SUCCESS
NDIS hat die VC als inaktiv markiert.
NDIS_STATUS_NOT_ACCEPTED
Die VC ist bereits deaktiviert, sodass dieser Aufruf redundant ist.

Hinweise

Ein MCM-Treiber ruft NdisMCmDeactivateVc als wesentlichen Schritt zum Schließen eines Anrufs auf, in der Regel nach dem Paketaustausch mit Netzwerkkomponenten, der die Verbindung reißt.

Ein erfolgreicher Aufruf von NdisMCmDeactivateVc ermöglicht es dem MCM-Treiber, die aktuellen Aufrufparameter für Übertragungen auf der VC zu verwerfen und sie möglicherweise wieder zu miniporttreiberbestimmten Standardwerten zu initialisieren. Wenn die VC jedoch später für einen anderen Aufruf reaktiviert wird, stellt der Client neue Aufrufparameter für den Miniporttreiber bereit.

Das an NdisMCmDeactivateVc übergebene NdisVcHandle bleibt nach Abschluss der VC-Deaktivierung gültig. Die Deaktivierung einer beliebigen VC ermöglicht es ihrem Ersteller, die VC zur Wiederverwendung neu zu initialisieren oder zu zerstören:

  • Nach der VC-Deaktivierung und dem Schließen des Aufrufs kann ein Client eine VC wiederverwenden, die er ursprünglich erstellt hat, um einen weiteren Aufruf mit NdisClMakeCall auszuführen, oder er kann NdisCoDeleteVc aufrufen, wodurch ein Aufruf der ProtocolCoDeleteVc-Funktion des MCM-Treibers verursacht wird.
  • Nach der VC-Deaktivierung und dem Schließen des Aufrufs kann ein MCM-Treiber eine ursprünglich erstellte VC wiederverwenden, um einen weiteren eingehenden Aufruf desselben Clients mit anzuzeigen. NdisMCmDispatchIncomingCall, oder es kann NdisMCmDeleteVc aufrufen.
Der Treiberschreiber bestimmt, ob ein MCM-Treiber über eine (interne) MiniportCoDeactivateVc-Funktion verfügt, die der Treiber im Kontext des Abreißens von Verbindungen für ausgehende und eingehende Aufrufe aufruft.

Nur verbindungsorientierte Miniporttreiber, die integrierte Unterstützung für die Anrufverwaltung bieten, können NdisMCmDeactivateVc aufrufen. Eigenständige Anrufmanager, die sich bei NDIS als Protokolltreiber registrieren, rufen stattdessen NdisCmDeactivateVc auf .

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisMCmDeactivateVc (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisMCmDeactivateVc (NDIS 5.1)) in Windows XP.
Zielplattform Desktop
Kopfzeile ndis.h (einschließlich Ndis.h)
Bibliothek Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI-Complianceregeln Irql_MCM_Function(ndis)

Weitere Informationen

MiniportCoDeactivateVc

NdisClCloseCall

NdisClMakeCall

NdisCmDeactivateVc

NdisMCmActivateVc

NdisMCmDeleteVc

NdisMCmDispatchIncomingCall

ProtocolCmCloseCall

ProtocolCoDeleteVc