Freigeben über


CreateSortedAddressPairs-Funktion (netioapi.h)

Die CreateSortedAddressPairs-Funktion akzeptiert eine angegebene Liste potenzieller IP-Zieladressen, paart die Zieladressen mit den lokalen IP-Adressen des Hostcomputers und sortiert die Paare nach dem Adresspaar, das für die Kommunikation zwischen den beiden Peers am besten geeignet ist.

Syntax

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API CreateSortedAddressPairs(
  [in, optional] const PSOCKADDR_IN6 SourceAddressList,
  [in]           ULONG               SourceAddressCount,
  [in]           const PSOCKADDR_IN6 DestinationAddressList,
  [in]           ULONG               DestinationAddressCount,
  [in]           ULONG               AddressSortOptions,
  [out]          PSOCKADDR_IN6_PAIR  *SortedAddressPairList,
  [out]          ULONG               *SortedAddressPairCount
);

Parameter

[in, optional] SourceAddressList

Muss NULL sein. Für die zukünftige Verwendung reserviert.

[in] SourceAddressCount

Muss den Wert 0 (null) haben. Für die zukünftige Verwendung reserviert.

[in] DestinationAddressList

Ein Zeiger auf ein Array von SOCKADDR_IN6 Strukturen, die eine Liste potenzieller IPv6-Zieladressen enthalten. Alle IPv4-Adressen müssen im IPv4-zugeordneten IPv6-Adressformat dargestellt werden, sodass eine reine IPv6-Anwendung mit einem IPv4-Knoten kommunizieren kann.

[in] DestinationAddressCount

Die Anzahl der Zieladressen, auf die der Parameter DestinationAddressList verweist.

[in] AddressSortOptions

Für die zukünftige Verwendung reserviert.

[out] SortedAddressPairList

Ein Zeiger zum Speichern eines Arrays von SOCKADDR_IN6_PAIR Strukturen, die eine Liste von IPv6-Adresspaaren enthalten, die in der bevorzugten Kommunikationsreihenfolge sortiert sind, wenn der Funktionsaufruf erfolgreich ist.

[out] SortedAddressPairCount

Ein Zeiger zum Speichern der Anzahl von Adresspaaren, auf die der SortedAddressPairList-Parameter verweist, wenn der Funktionsaufruf erfolgreich ist.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert NO_ERROR.

Wenn die Funktion fehlschlägt, ist der Rückgabewert einer der folgenden Fehlercodes.

Rückgabecode Beschreibung
ERROR_INVALID_PARAMETER
Es wurde ein ungültiger Parameter an die Funktion übergeben. Dieser Fehler wird zurückgegeben, wenn die Parameter DestinationAddressList, SortedAddressPairList oder SortedAddressPairCountNULL oder DestinationAddressCount größer als 500 war. Dieser Fehler wird auch zurückgegeben, wenn SourceAddressList nicht NULL oder der SourceAddressPairCount-Parameter nicht null ist.
ERROR_NOT_ENOUGH_MEMORY
Für die Verarbeitung dieses Befehls ist nicht genügend Speicherplatz verfügbar.
ERROR_NOT_SUPPORTED
Die Anforderung wird nicht unterstützt. Dieser Fehler wird zurückgegeben, wenn sich kein IPv6-Stapel auf dem lokalen Computer befindet.
Andere
Verwenden Sie FormatMessage , um die Meldungszeichenfolge für den zurückgegebenen Fehler abzurufen.

Hinweise

Die CreateSortedAddressPairs-Funktion ist unter Windows Vista und höher definiert.

Die CreateSortedAddressPairs-Funktion akzeptiert eine Liste der IPv6-Quell- und Zieladressen und gibt eine Liste von Adresspaaren in sortierter Reihenfolge zurück. Die Liste ist nach dem Adresspaar sortiert, das für die Kommunikation zwischen Quell- und Zieladresse am besten geeignet ist.

Die Liste der Quelladressen, auf die sourceAddressList verweist, ist derzeit für die Zukunft reserviert und muss ein NULL-Zeiger sein. SourceAddressCount ist derzeit für die Zukunft reserviert und muss null sein. Die CreateSortedAddressPairs-Funktion verwendet derzeit alle lokalen Adressen des Hostcomputers für die Quelladressenliste.

Auf die Liste der Zieladressen verweist der Parameter DestinationAddressList . Die Liste der Zieladressen ist ein Array von SOCKADDR_IN6 Strukturen. Alle IPv4-Adressen müssen im IPv4-zugeordneten IPv6-Adressformat dargestellt werden, sodass eine reine IPv6-Anwendung mit einem IPv4-Knoten kommunizieren kann. Weitere Informationen zum IPv4-zugeordneten IPv6-Adressformat finden Sie unter Dual-Stack Sockets. Der Parameter DestinationAddressCount enthält die Anzahl der Zieladressen, auf die der Parameter DestinationAddressList verweist. Die CreateSortedAddressPairs-Funktion unterstützt maximal 500 Zieladressen.

Wenn die CreateSortedAddressPairs-Funktion erfolgreich ist, verweist der Parameter SortedAddressPairList auf ein Array von SOCKADDR_IN6_PAIR Strukturen, die die sortierten Adresspaare enthalten. Wenn diese zurückgegebene Liste nicht mehr benötigt wird, geben Sie den von der Liste verwendeten Arbeitsspeicher frei, indem Sie die FreeMibTable-Funktion aufrufen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile netioapi.h (include Iphlpapi.h)
Bibliothek Iphlpapi.lib
DLL Iphlpapi.dll

Weitere Informationen

Dual-Stack-Sockets

FreeMibTable

SOCKADDR_IN6_PAIR

Verwenden von SIO_ADDRESS_LIST_SORT

sockaddr