Auf Englisch lesen

Freigeben über


NdisCmDispatchIncomingCloseCall-Funktion (ndis.h)

NdisCmDispatchIncomingCloseCall einem Client angibt, einen aktiven oder angebotenen Anruf zu zerreißen, in der Regel, weil der Anrufmanager eine Anforderung vom Netzwerk zum Schließen der Verbindung erhalten hat.

Syntax

void NdisCmDispatchIncomingCloseCall(
  [in]           NDIS_STATUS CloseStatus,
  [in]           NDIS_HANDLE NdisVcHandle,
  [in, optional] PVOID       Buffer,
  [in]           UINT        Size
);

Parameter

[in] CloseStatus

Gibt einen CM-bestimmten NDIS_STATUS_XXX-an, der den Grund für die Verbindungsanforderung angibt. Bei normalen Netzwerkvorgängen übergibt ein Anrufmanager NDIS_STATUS_SUCCESS, um anzugeben, dass er eine anforderung empfangen hat, die von der Remotepartei initiiert wurde, um einen aktiven Anruf zu schließen.

[in] NdisVcHandle

Gibt das Handle für die VC des Anrufs an, der getrennt wird. Dieses Handle wurde von NDIS bereitgestellt, als die VC ursprünglich erstellt wurde, ob vom Anrufmanager oder Client, mit NdisCoCreateVc.

[in, optional] Buffer

Zeiger auf einen vom Aufrufer zugewiesenen Residentpuffer mit zusätzlichen protokollspezifischen Trenndaten, falls vorhanden. Je nach zugrunde liegendem Medium kann dieser Zeiger NULL-

[in] Size

Gibt die Größe in Byte des Puffers an, null, wenn Puffer-NULL-ist.

Rückgabewert

Nichts

Bemerkungen

Im Verlauf der normalen Netzwerkvorgänge ruft ein eigenständiger CM-Aufruf NdisCmDispatchIncomingCloseCall mit dem CloseStatus- auf NDIS_STATUS_SUCCESS festgelegt, da der entsprechende Client auf dem Remoteknoten NdisClCloseCallaufgerufen hat.

Ein Anrufmanager kann jedoch auch NdisCmDispatchIncomingCloseCall- aufrufen, wenn eine der folgenden Aktionen auftritt:

  • Der Anrufmanager hat einen Kunden über ein Angebot für eingehende Anrufe benachrichtigt. Wann die CM-Daten ProtocolCmIncomingCallComplete--Funktion mit der Annahme des Clients aufgerufen wird, überprüft er die Eingabeaufrufparameter, die dieser Client geändert hat. ProtocolCmIncomingCallComplete bestimmt, dass der Client nicht unterstützte Aufrufparameter für die Verbindung vorschlägt, sodass er NdisCmDispatchIncomingCloseCallaufruft.
  • Ungewöhnliche Netzwerkbedingungen erzwingen, dass der Anrufmanager aktive Anrufe abreißt. Wenn der Anrufmanager beispielsweise benachrichtigt wird, wenn eine Verbindung zwischen diesem Client und der Remotepartei zur Verbindung unterbrochen wird, ruft der CM NdisDispatchIncomingCloseCall auf, um zu verhindern, dass der Client weitere Datenübertragungen für eine solche fehlerhafte Verbindung versucht (oder erwartet).
Nach dem Abreißen eines Anrufs ist der ursprüngliche Ersteller des VC für das Aufrufen von NdisCoDeleteVc verantwortlich, nachdem alle zusätzlichen Ressourcen freigegeben wurden, die er dem VC zugeordnet hatte.

Ein Aufruf von NdisCmDispatchIncomingCloseCall bewirkt, dass NDIS den Client aufruft ProtocolClIncomingCloseCall-Funktion.

Nur eigenständige Anrufmanager, die sich bei NDIS als Protokolltreiber registrieren, können NdisCmDispatchIncomingCloseCallaufrufen. Verbindungsorientierte Miniporttreiber, die Anrufunterstützungsanrufe bereitstellen stattdessen NdisMCmDispatchIncomingCall.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisDispatchIncomingCloseCall (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisCmDispatchIncomingCloseCall (NDIS 5.1)) in Windows XP.
Zielplattform- Desktop
Header- ndis.h (include Ndis.h)
Library Ndis.lib
IRQL- <= DISPATCH_LEVEL
DDI-Complianceregeln Irql_CallManager_Function(ndis)

Siehe auch

NdisClCloseCall

NdisCmDispatchIncomingDropParty

NdisCoDeleteVc

NdisMCmDispatchIncomingCloseCall

ProtocolClIncomingCloseCall

ProtocolCoReceiveNetBufferLists

ProtocolCoStatusEx-