CreateSortedAddressPairs 函数

在提供的潜在 IP 目标地址列表中, CreateSortedAddressPairs 函数将目标地址与主机的本地 IP 地址配对,并根据首选通信顺序对对进行排序。

语法

NETIOAPI_API CreateSortedAddressPairs(
  _In_opt_ const PSOCKADDR_IN6      SourceAddressList,
  _In_           ULONG              SourceAddressCount,
  _In_     const PSOCKADDR_IN6      DestinationAddressList,
  _In_           ULONG              DestinationAddressCount,
  _In_           ULONG              AddressSortOptions,
  _In_           PSOCKADDR_IN6_PAIR *SortedAddressPairList,
  _Out_          ULONG              *SortedAddressPairCount
);

参数

  • SourceAddressList [in, optional]
    保留。 此参数必须为 NULL

  • SourceAddressCount [in]
    保留。 此参数必须为零。

  • DestinationAddressList [in]
    指向 SOCKADDR_IN6类型的潜在目标地址列表的指针。

  • DestinationAddressCount [in]
    DestinationAddressList 参数指向的列表中的地址数。

  • AddressSortOptions [in]
    保留。 此参数必须为零。

  • SortedAddressPairList [in]
    指向源地址和目标地址对列表的指针,按首选通信顺序排序。 有关此参数的详细信息,请参阅以下“备注”部分。

  • SortedAddressPairCount [out]
    SortedAddressPairList 参数指向的列表中的地址对数。

返回值

如果函数成功,CreateSortedAddressPairs 将返回STATUS_SUCCESS。

如果函数失败, CreateSortedAddressPairs 将返回以下错误代码之一:

返回代码 说明
STATUS_INVALID_PARAMETER

向该函数传递了无效参数。

STATUS_NOT_ENOUGH_MEMORY

内存资源不足,无法完成操作。

其他

使用 FormatMessage 函数获取返回错误的消息字符串。

注解

CreateSortedAddressPairs 函数自动将主机的本地地址与 DestinationAddressList 参数指向的潜在目标地址列表配对。

SortedAddressPairList 参数指向的返回地址对列表进行排序,以便最适合两个对等之间的通信的地址对出现在列表的前面。

SortedAddressPairList 参数的类型为 PSOCKADDR_IN6_PAIR,该参数在 Ws2ipdef.h 标头中定义,如下所示。

    typedef struct _sockaddr_in6_pair
    {
        PSOCKADDR_IN6  SourceAddress;
        PSOCKADDR_IN6  DestinationAddress;
    } SOCKADDR_IN6_PAIR, *PSOCKADDR_IN6_PAIR;

  - **SourceAddress**  
    The IP source address.

  - **DestinationAddress**  
    The IP destination address.

要求

目标平台

通用

版本

在 Windows Vista 和更高版本的 Windows 操作系统中可用。

标头

Netioapi.h (包括 Netioapi.h)

Netio.lib

IRQL

< DISPATCH_LEVEL

另请参阅

FormatMessage

SOCKADDR_IN6