mgmTakeInterfaceOwnership 函数 (mgm.h)

MgmTakeInterfaceOwnership 函数由客户端 (调用,例如在接口上启用时) 路由协议。

在任何时候,只有一个客户端可以获取给定接口的所有权。 此规则的唯一例外是 IGMP。 IGMP 可以与接口上的另一个客户端共存。

语法

DWORD MgmTakeInterfaceOwnership(
  [in] HANDLE hProtocol,
  [in] DWORD  dwIfIndex,
  [in] DWORD  dwIfNextHopAddr
);

参数

[in] hProtocol

从之前调用 MgmRegisterMProtocol 获取的协议的句柄。

[in] dwIfIndex

指定要获取其所有权的接口的索引。

[in] dwIfNextHopAddr

指定与 dwIfIndex 指定的索引相对应的下一跃点的地址。 dwIfIndexdwIfNextHopIPAddr 参数唯一标识点到多点接口上的下一跃点。 点到多点接口是一个接口连接到多个网络的连接。 点到多点接口的示例包括非广播多访问 (NBMA) 接口和所有拨号客户端连接的内部接口。

对于广播接口 (,例如以太网接口) 或点到点接口(仅由 dwIfIndex 的值标识),请指定零。

返回值

如果函数成功,则返回值NO_ERROR。

如果函数失败,则返回值为以下错误代码之一。

含义
ERROR_ALREADY_EXISTS
指定的接口已由另一个路由协议拥有。
ERROR_CAN_NOT_COMPLETE
无法完成对此函数的调用。
ERROR_INVALID_PARAMETER
客户端句柄无效。
ERROR_NOT_ENOUGH_MEMORY
内存不足,无法完成此操作。
 
 

注解

客户端必须在向多播组管理器注册自己之后,但在添加组成员身份条目之前,才获取接口的所有权。

要求

要求
最低受支持的客户端 无受支持的版本
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 mgm.h
Library Rtm.lib
DLL Rtm.dll

另请参阅

MgmGetProtocolOnInterface

MgmRegisterMProtocol

MgmReleaseInterfaceOwnership