NdisCmDispatchIncomingDropParty 函数 (ndis.h)
NdisCmDispatchIncomingDropParty 通知客户端它应删除多点 VC 上的特定一方,通常是因为呼叫管理器已通过网络收到了关闭活动多点连接的请求。
语法
void NdisCmDispatchIncomingDropParty(
[in] NDIS_STATUS DropStatus,
[in] NDIS_HANDLE NdisPartyHandle,
[in, optional] PVOID Buffer,
[in] UINT Size
);
参数
[in] DropStatus
指示删除此参与方的原因,如果远程方只是请求关闭其连接,通常NDIS_STATUS_SUCCESS。
[in] NdisPartyHandle
指定用于标识要从多点 VC 中删除的参与方的句柄,该多点 VC 必须具有仍连接的其他参与方。
[in, optional] Buffer
指向调用方分配的驻留缓冲区的指针,该缓冲区包含从远程方接收的其他特定于协议的数据(如果有)。 根据基础介质,此指针可以为 NULL。
[in] Size
指定缓冲区的大小(以字节为单位),如果 Buffer 为 NULL,则为零。
返回值
无
备注
在正常网络操作过程中,独立呼叫管理器的 ProtocolCoReceiveNetBufferLists 函数调用 NdisCmDispatchIncomingDropParty 并将 CloseStatus 设置为 NDIS_STATUS_SUCCESS,因为多点连接上的远程客户端已调用 NdisClCloseCall。
但是,如果出现异常网络状况(例如本地客户端与已建立的多点连接上的一个或多个客户端 () 之间的路径上的开关失败),呼叫管理器还可以根据网络本身的指示使用 CM 确定的 CloseStatus 调用 NdisCmDispatchIncomingDropParty。
调用 NdisCmDispatchIncomingDropParty 会导致 NDIS 调用客户端的 ProtocolClIncomingDropParty 函数。
如果 NdisPartyHandle 标识给定 VC 上最后一个剩余的一方,则 CM 将调用 NdisCmDispatchIncomingCloseCall,而不是 NdisCmDispatchIncomingDropParty。
只有向 NDIS 注册为协议驱动程序的独立调用管理器才能调用 NdisCmDispatchIncomingDropParty。 提供集成呼叫管理支持的面向连接的微型端口驱动程序改为调用 NdisMCmDispatchIncomingDropParty 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 支持 NDIS 6.0 和 NDIS 5.1 驱动程序 (请参阅 Windows Vista 中的 NdisCmDispatchIncomingDropParty (NDIS 5.1) ) 。 NDIS 5.1 驱动程序支持 (请参阅 Windows XP 中的 NdisCmDispatchIncomingDropParty (NDIS 5.1) ) 。 |
目标平台 | 桌面 |
标头 | ndis.h (包括 Ndis.h) |
Library | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 符合性规则 | Irql_CallManager_Function (ndis) |