INetworkCostManager::SetDestinationAddresses 方法 (netlistmgr.h)
SetDestinationAddresses 方法注册指定的目标 IPv4/IPv6 地址,以接收成本或数据计划状态更改通知。
语法
HRESULT SetDestinationAddresses(
[in] UINT32 length,
[in] NLM_SOCKADDR *pDestIPAddrList,
VARIANT_BOOL bAppend
);
参数
[in] length
列表中的目标 IPv4/IPv6 地址数。
[in] pDestIPAddrList
包含目标 IPv4/IPv6 地址列表 的NLM_SOCKADDR 结构,用于注册成本或数据计划状态更改通知。
bAppend
如果为 true, 则 pDestIPAddrList 将追加到现有地址列表;否则,将覆盖现有列表。
返回值
成功时返回S_OK,否则返回 HRESULT 错误代码。
返回代码 | 说明 |
---|---|
|
如果发生以下情况之一,则返回 :
|
|
destIPAddrList 为 NULL。 |
|
不支持该请求。 如果本地计算机上不存在 IPv4 或 IPv6 堆栈,但 destIPAddr 指定了 IPv4 或 IPv6 地址,则返回此错误。 |
|
此方法是在通过调用 IConnectionPoint::Advise 注册 INetworkCostManagerEvents 后调用的。 有关详细信息,请参阅“备注”。 |
注解
必须在 IConnectionPoint::Advise 之前调用此方法。 调用 IConnectionPoint::Advise 后,此方法在最后一个接收器调用 IConnectionPoint::UnAdvise 之前不会成功完成。 但是,在调用 IConnectionPoint::Advise 之前,可以多次调用此方法。
如果 pDestIPAddrList 指示的目标地址列表包含重复地址,则每个地址中只有一个将用于通知成本更改。 调用方可以通过调用 长度 设置为 0、 destIPAddrList 设置为 NULL 和 bAppend 设置为 FALSE 的函数来清除目标列表。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | 无受支持的版本 |
目标平台 | Windows |
标头 | netlistmgr.h |