Функция RtlIpv6AddressToStringA (ip2string.h)
Функция RtlIpv6AddressToString преобразует IPv6-адрес в строку в стандартном для Интернета формате.
Синтаксис
NTSYSAPI PSTR RtlIpv6AddressToStringA(
[in] const in6_addr *Addr,
[out] PSTR S
);
Параметры
[in] Addr
IPv6-адрес в порядке байтов сети.
[out] S
Указатель на буфер, в котором будет храниться строковое представление IPv6-адреса, завершаемого значением NULL. Этот буфер должен быть достаточно большим и содержать не менее 46 символов.
Возвращаемое значение
Указатель на символ NULL, вставленный в конце строкового представления IPv6-адреса. Вызывающий объект может использовать его для добавления дополнительных сведений в строку.
Комментарии
Функция RtlIpv6AddressToString используется для преобразования IPv6-адреса в строковое представление адреса IPv6 в стандартном для Интернета формате.
Базовое строковое представление состоит из 8 шестнадцатеричных чисел, разделенных двоеточиями. Строка последовательных нулевых чисел заменяется двойной двоеточием. В строковом представлении IPv6-адреса может быть только один двойной двоеточие. Последние 32 бита представлены в нотации IPv4-точечным октетом, если адрес является IPv4-совместимым адресом, IPv4-адресом IPv6 или ISATAP-адресом. Дополнительные сведения см. в разделе 5 документа RFC 5942 , опубликованного IETF.
RtlIpv6AddressToString — это удобная функция, которая не требует загрузки библиотеки DLL сокетов Windows для доступа к функции, предоставленной в сокетах Windows, для выполнения преобразования IP-адресов в строки.
При определении ЮНИКОДа или _UNICODE RtlIpv6AddressToString определяется как RtlIpv6AddressToStringW, версия этой функции в Юникоде. Строковый параметр S и возвращаемое значение функции определяются для типа данных PWSTR.
Если и UNICODE, и _UNICODE не определены, RtlIpv6AddressToString определяется как RtlIpv6AddressToStringA, версия ANSI этой функции. Строковый параметр S и возвращаемое значение функции определяются для типа данных PSTR.
Структура IN6_ADDR определена в файле заголовка In6addr.h .
Библиотека импорта, содержащая функцию RtlIpv6AddressToString , не входит в пакет средств разработки программного обеспечения Microsoft Windows (SDK), выпущенный для Windows Vista. Функция RtlIpv6AddressToString входит в библиотеку импорта Ntdll.lib , включенную в комплект драйверов Windows (WDK). Приложение также может использовать функции GetModuleHandle и GetProcAddress для получения указателя функции из Ntdll.dll и вызова этой функции.
Примечание
Заголовок ip2string.h определяет RtlIpv6AddressToString в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | ip2string.h (включая Mstcpip.h, Ip2string.h) |
Библиотека | ntdll.lib |
DLL | ntdll.dll |