NdisMCmOpenAddressFamilyComplete 宏 (ndis.h)

NdisMCmOpenAddressFamilyComplete 返回客户端请求的最终状态,MCM 驱动程序的 ProtocolCmOpenAf 函数NDIS_STATUS_PENDING返回该请求以打开 MCM 驱动程序的地址系列。

语法

void NdisMCmOpenAddressFamilyComplete(
   _S_,
   _H_,
   _C_
);

参数

_S_

指定客户端打开 AF 的请求的最终状态,NDIS_STATUS_SUCCESS或任何调用方确定NDIS_STATUS_ XXX (NDIS_STATUS_PENDING除外)。

_H_

指定输入到 MCM 驱动程序的 ProtocolCmOpenAf 函数的 NDIS 提供的句柄,该句柄返回NDIS_STATUS_PENDING。

_C_

指定调用方分配的常驻上下文区域的句柄,其中 MCM 驱动程序维护有关此客户端打开地址系列(包括 NdisAfHandle)的状态(如果打开成功)。 否则,NDIS 将忽略此参数。

返回值

备注

如果 MCM 驱动程序的 ProtocolCmOpenAf 函数以前为给定的 NdisAfHandle 返回NDIS_STATUS_PENDING,则必须调用 NdisMCmOpenAddressFamilyComplete 通过调用 NdisClOpenAddressFamilyEx 来启动笔式 open-AF 操作的客户端无法在同一绑定上执行面向连接的进一步操作,直到 NdisMCmOpenAddressFamilyComplete 导致调用该客户端的 ProtocolClOpenAfCompleteEx 函数。

如果 NdisMCmOpenAddressFamilyComplete 的调用方将 Status 设置为 NDIS_STATUS_SUCCESS,则 NDIS 随后会将给定 的 CallMgrAfContext 句柄作为输入参数传递给所有 MCM 驱动程序提供的 ProtocolCmXxx 和 ProtocolCoXxx 函数,这些函数涉及客户端打开的地址系列,直到客户端关闭 AF。 MCM 驱动程序应释放或重复使用它在将失败状态传递给 NdisMCmOpenAddressFamilyComplete 之前分配的任何 AF 上下文区域。

若要成功打开,NDIS 提供的 NdisAfHandle 表示 MCM 驱动程序与打开的 AF 客户端之间的关联。 两个 NDIS 驱动程序都必须将 NdisAfHandle 视为后续调用 NdisCl/Co/MCm/MCoXxx 函数(此句柄是必需的参数)中传递、未修改和未解释的不透明变量。 对于失败的打开,当 NdisMCmOpenAddressFamilyComplete 返回控件时,MCM 驱动程序应将 NdisAfHandle 视为无效。

只有提供集成呼叫管理支持的面向连接的微型端口驱动程序才能调用 NdisMCmOpenAddressFamilyComplete。 独立调用管理器(将自己注册到 NDIS 作为协议驱动程序)改为调用 NdisCmOpenAddressFamilyComplete

要求

要求
最低受支持的客户端 NDIS 6.0 和 NDIS 5.1 驱动程序支持 (请参阅 Windows Vista 中的 NdisMCmOpenAddressFamilyComplete (NDIS 5.1) ) 。 NDIS 5.1 驱动程序支持 (请参阅 Windows XP 中的 NdisMCmOpenAddressFamilyComplete (NDIS 5.1) ) 。
目标平台 桌面
标头 ndis.h (包括 Ndis.h)
IRQL <= DISPATCH_LEVEL
DDI 符合性规则 Irql_MCM_Function (ndis)

另请参阅

NdisAllocateFromNPagedLookasideList

NdisClOpenAddressFamilyEx

NdisCmOpenAddressFamilyComplete

ProtocolClOpenAfCompleteEx

ProtocolCmOpenAf