Поделиться через


Функция RtlIpv6AddressToStringA (ip2string.h)

Функция RtlIpv6AddressToString преобразует IPv6-адрес в строку в стандартном формате Интернета.

Синтаксис

NTSYSAPI PSTR RtlIpv6AddressToStringA(
  [in]  const in6_addr *Addr,
  [out] PSTR           S
);

Параметры

[in] Addr

Адрес IPv6 в порядке байтов сети.

[out] S

Указатель на буфер, в котором хранится NULLстроковое представление IPv6-адреса. Этот буфер должен быть достаточно большим, чтобы содержать не менее 46 символов.

Возвращаемое значение

Указатель на символ NULL, вставленный в конце строкового представления IPv6-адреса. Это можно использовать вызывающим методом для легкого добавления дополнительных сведений в строку.

Замечания

Функция RtlIpv6AddressToString используется для преобразования IPv6-адреса в строковое представление IPv6-адреса в стандартном формате Интернета.

Базовое строковое представление состоит из 8 шестнадцатеричных чисел, разделенных двоеточиями. Строка последовательных нулевых чисел заменяется двойной двоеточием. В строковом представлении IPv6-адреса может быть только одна двойная двоеточие. Последние 32 бита представлены в iPv4-style dotted-octet нотации, если адрес является адресом, совместимым с IPv4, ipPv4-сопоставленным IPv6-адресом или IPATAP-адресом. Дополнительные сведения см. в разделе 5 RFC 5942 опубликовано IETF.

RtlIpv6AddressToString — это удобная функция, которая не требует загрузки библиотеки DLL сокетов Windows для доступа к функции, предоставленной в сокетах Windows, для выполнения преобразования IP-адресов в строку.

При определении ЮНИКОДа или _UNICODE RtlIpv6AddressToString определяется как RtlIpv6AddressToStringW, версия Юникода этой функции. Строковый параметр S и возвращаемое значение функции определяются для типа данных PWSTR.

Если не определены и ЮНИКОД, и _UNICODE RtlIpv6AddressToString определяется как RtlIpv6AddressToStringA, версия ANSI этой функции. Строковый параметр S и возвращаемое значение функции определяются для типа данных PSTR.

Структура IN6_ADDR определена в файле заголовка In6addr.h.

Библиотека импорта, содержащая функцию RtlIpv6AddressToString, не включена в пакет SDK для Microsoft Windows, выпущенный для Windows Vista. Функция RtlIpv6AddressToString включена в библиотеку импорта Ntdll.lib, включенную в комплект драйверов Windows (WDK). Приложение также может использовать GetModuleHandle и функции GetProcAddress для получения указателя функции из Ntdll.dll и вызова этой функции.

Заметка

Заголовок ip2string.h определяет RtlIpv6AddressToString в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [классические приложения | Приложения UWP]
минимальный поддерживаемый сервер Windows Server 2008 [классические приложения | Приложения UWP]
целевая платформа Виндоус
заголовка ip2string.h (include Mstcpip.h, Ip2string.h)
библиотеки ntdll.lib
DLL ntdll.dll

См. также

GetModuleHandle

GetProcAddress

InetNtop

InetPton

LoadLibrary

RtlIpv4AddressToString

RtlIpv4AddressToStringEx

RtlIpv4StringToAddress

RtlIpv4StringToAddressEx

RtlIpv6AddressToStringEx

RtlIpv6StringToAddress

RtlIpv6StringToAddressEx

inet_addr

inet_ntoa