NdisMCmActivateVc-Funktion (ndis.h)

NdisMCmActivateVc benachrichtigt NDIS, dass ein MCM-Treiber bereit ist, Transfers für eine bestimmte VC durchzuführen.

Syntax

NDIS_STATUS NdisMCmActivateVc(
  [in] NDIS_HANDLE         NdisVcHandle,
  [in] PCO_CALL_PARAMETERS CallParameters
);

Parameter

[in] NdisVcHandle

Gibt den Handle an, der die VC identifiziert.

[in] CallParameters

Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der als Struktur vom Typ CO_CALL_PARAMETERS formatiert ist und alle medienspezifischen Parameter enthält, die der Miniporttreiber für die aktivierte VC verwendet.

Rückgabewert

Wenn NdisMCmActivateVc etwas anderes als NDIS_STATUS_PENDING zurückgibt, sollte der MCM-Treiber einen internen Aufruf an seinen ProtocolCmActivateVcComplete-Funktion . Andernfalls ruft NDIS die ProtocolCmActivateVcComplete-Funktion des MCM-Treibers auf, wenn dieser Vorgang abgeschlossen ist.

Hinweise

NdisMCmActivateVc informiert NDIS darüber, dass ein MCM-Treiber Aufruf- und Medienparameter für eine neu erstellte VC eingerichtet oder die Aufrufparameter für eine etablierte VC geändert hat.

Ein MCM-Treiber muss NdisMCmActivateVc aufrufen, nachdem eine Verbindung auf einer VC hergestellt wurde, aber bevor Daten auf dieser VC gesendet oder empfangen werden. Dieser Aufruf benachrichtigt NDIS, dass der Miniporttreiber eine NIC für Transfers auf der VC bereit gemacht hat.

Bei einem vom Client initiierten ausgehenden Anruf ruft ein MCM-Treiber normalerweise NdisMCmActivateVc auf, nachdem der Handshake eine ausgehandelte Vereinbarung mit dem Remoteknoten oder eine erfolgreiche Anrufeinrichtung auf dem Switch angibt, bevor er NDIS (und den Client) über den Abschluss ausgehender Anrufe mit NdisMCmMakeCallComplete benachrichtigt. Bei einem eingehenden Anruf ruft ein MCM-Treiber normalerweise NdisMCmActivateVc auf, nachdem er NdisMCmCreateVc erfolgreich aufgerufen hat und bevor er aufruft. NdisMCmDispatchIncomingCall.

Der Treiberschreiber bestimmt, ob ein MCM-Treiber über eine (interne) MiniportCoActivateVc-Funktion verfügt, die der Treiber im Kontext der Einrichtung von Verbindungen für ausgehende und eingehende Anrufe aufruft.

Für die Dauer der Verbindung kann ein MCM-Treiber die Aufrufparameter als Bedingungen im Netzwerk ändern und/oder wenn der Client NdisClModifyCallQoS aufruft. Der MCM-Treiber muss den Zustand aktualisieren, den er über Aufrufparameter auf die neuen Werte verwaltet, wenn er weiterhin Übertragungen auf die VC gemäß den neu geänderten Aufrufparametern vornehmen kann. Sie muss NdisMCmActivateVc aufrufen, um NDIS über Änderungen an den Aufrufparametern für die aktive VC zu benachrichtigen. Andernfalls kann der MCM-Treiber eine der folgenden Aktionen ausführen:

  • Rufen Sie NdisMCmDeactivateVc auf, nachdem die Anforderung des Clients, QoS oder andere Aufrufparameter für die VC zu ändern, nicht mehr in einen Zustand versetzt wurde, dass der Miniporttreiber keine Weiteren Übertragungen auf der VC durchführen kann.
  • Stellen Sie die Aufrufparameter in einen zuvor akzeptierten Zustand wieder her, benachrichtigen Sie den Client, der die Änderung angefordert hat, und bleiben Sie bereit, die Übertragung von Daten auf der VC fortzusetzen. In diesem Fall hat der Client die Möglichkeit, die wiederhergestellten Aufrufparameter zu akzeptieren oder abzulehnen und einen Abschluss der VC zu initiieren.
Nur verbindungsorientierte Miniporttreiber, die integrierte Unterstützung für die Anrufverwaltung bieten, können NdisMCmActivateVc aufrufen. Eigenständige Anrufmanager, die sich bei NDIS als Protokolltreiber registrieren, rufen stattdessen NdisCmActivateVc auf .

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisMCmActivateVc (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisMCmActivateVc (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

CO_CALL_PARAMETERS

MiniportCoActivateVc

NdisClMakeCall

NdisClModifyCallQoS

NdisCmActivateVc

NdisMCmCreateVc

NdisMCmDeactivateVc

NdisMCmDispatchIncomingCall

ProtocolCoCreateVc