NdisCmDeactivateVc 函数 (ndis.h)
NdisCmDeactivateVc 通知 NDIS 和基础微型端口驱动程序,特定活动 VC 上不会进一步传输。
NDIS_STATUS NdisCmDeactivateVc(
[in] NDIS_HANDLE NdisVcHandle
);
[in] NdisVcHandle
指定标识 VC 的句柄。 此句柄由 NDIS 提供给调用管理器,无论是调用传入呼叫 NdisCoCreateVc,还是当其 ProtocolCoCreateVc 函数为客户端发起的传出调用设置 VC 时。
NdisCmDeactivateVc 返回除NDIS_STATUS_PENDING以外的任何内容时,调用管理器应对其进行内部调用 ProtocolCmDeactivateVcComplete 函数。 否则,NDIS 会在完成此作时调用 CM 的 ProtocolCmDeactivateVcComplete 函数。
独立调用管理器调用 NdisCmDeactivateVc 作为关闭呼叫的重要步骤,通常是在与断开呼叫的网络组件进行数据包交换之后。
调用 NdisCmDeactivateVc 会导致 NDIS 调用基础微型端口驱动程序的 MiniportCoDeactivateVc 函数,该函数可以放弃当前调用参数以在 VC 上传输,可能将其重新初始化为微型端口驱动程序确定的默认值。 如果随后为另一个调用重新激活 VC,客户端或调用管理器将向微型端口驱动程序提供新的调用参数。
传递给 NdisCmDeactivateVc NdisVcHandle 在完成 VC 停用后仍然有效。 任何 VC 的停用都允许其创建者重新初始化 VC 以供重复使用:
- 在 VC 停用和结束调用后,客户端可以重复使用最初创建的 VC,以便使用 NdisClMakeCall进行另一次调用。
- 在 VC 停用和结束调用后,CM 可以重复使用最初创建的 VC,以指示对同一客户端的另一个传入调用 NdisCmDispatchIncomingCall。
只有将自己注册为协议驱动程序的 NDIS 的独立呼叫管理器才能调用 NdisCmDeactivateVc。 面向连接的微型端口驱动程序,这些驱动程序提供集成的呼叫管理支持呼叫 NdisMCmDeactivateVc。
要求 | 价值 |
---|---|
最低支持的客户端 | Windows Vista 中支持 NDIS 6.0 和 NDIS 5.1 驱动程序(请参阅 NdisCmDeactivateVc(NDIS 5.1)。 在 Windows XP 中支持 NDIS 5.1 驱动程序(请参阅 NdisCmDeactivateVc(NDIS 5.1)。 |
目标平台 | 桌面 |
标头 | ndis.h (包括 Ndis.h) |
库 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 符合性规则 | Irql_CallManager_Function(ndis) |