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.
void NdisCmDispatchIncomingCloseCall(
[in] NDIS_STATUS CloseStatus,
[in] NDIS_HANDLE NdisVcHandle,
[in, optional] PVOID Buffer,
[in] UINT Size
);
[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.
Nichts
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).
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.
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) |