Partager via


Fonction RtlIpv4AddressToStringExA (ip2string.h)

La fonction RtlIpv4AddressToStringEx convertit une adresse IPv4 et un numéro de port en chaîne au format standard Internet.

Syntaxe

NTSYSAPI NTSTATUS RtlIpv4AddressToStringExA(
  [in]      const in_addr *Address,
  [in]      USHORT        Port,
  [out]     PSTR          AddressString,
  [in, out] PULONG        AddressStringLength
);

Paramètres

[in] Address

Adresse IPv4 dans l’ordre d’octet réseau.

[in] Port

Numéro de port au format d’ordre d’octet réseau. Ce paramètre est facultatif.

[out] AddressString

Pointeur vers la mémoire tampon pour recevoir la représentation sous forme de chaîne terminée par NULL de l’adresse et du port IPv4. Cette mémoire tampon doit être suffisamment grande pour contenir au moins INET_ADDRSTRLEN caractères. La valeur INET_ADDRSTRLEN est définie dans le fichier d’en-tête Ws2ipdef.h .

[in, out] AddressStringLength

Lors de l’entrée, le nombre de caractères qui tiennent dans la mémoire tampon pointée par le paramètre AddressString , y compris le terminateur NULL.

En sortie, ce paramètre contient le nombre de caractères réellement écrits dans la mémoire tampon pointée par le paramètre AddressString .

Valeur retournée

Si la fonction réussit, la valeur de retour est STATUS_SUCCESS.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants.

Code de retour Descriptif
STATUS_INVALID_PARAMETER
Un paramètre non valide a été passé à la fonction. Cette erreur est retournée si un pointeur NULL est passé dans le paramètre AddressString ou AddressStringLength. Cette erreur est également retournée si la longueur de la mémoire tampon pointée par le paramètre AddressString n’est pas suffisamment grande pour recevoir la représentation sous forme de chaîne de l’adresse et du port IPv4.
Autres
Utilisez FormatMessage pour obtenir la chaîne de message pour l’erreur retournée.

Remarques

La fonction RtlIpv4AddressToStringEx est utilisée pour convertir une adresse IPv4 et un numéro de port en représentation sous forme de chaîne de l’adresse IPv4 au format décimal en pointillés Internet suivi d’un caractère deux-points et d’une représentation sous forme de chaîne du port.

RtlIpv4AddressToStringEx est une fonction pratique qui ne nécessite pas que la DLL Windows Sockets soit chargée pour accéder à une fonction fournie dans Windows Sockets pour effectuer une adresse IP en conversion de chaîne.

Si la longueur de la mémoire tampon pointée par le paramètre AddressString n’est pas suffisamment grande pour recevoir la représentation sous forme de chaîne de l’adresse et du port IPv4, RtlIpv4AddressToStringEx retourne ERROR_INVALID_PARAMETER et définit le paramètre AddressStringLength sur la longueur de la mémoire tampon requise.

Lorsque unicode ou _UNICODE est défini, RtlIpv4AddressToStringEx est défini sur RtlIpv4AddressToStringExW, la version Unicode de cette fonction. Le paramètre AddressString est défini sur le type de données PWSTR.

Lorsque unicode et _UNICODE ne sont pas définis, RtlIpv4AddressToStringEx est défini sur RtlIpv4AddressToStringExA, la version ANSI de cette fonction. Le paramètre AddressString est défini sur le type de données PSTR.

La structure IN_ADDR est définie dans le fichier d’en-tête Inaddr.h .

Spécifications

Requirement Valeur
Client minimum requis Windows Vista [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau | Applications UWP]
plateforme cible Fenêtres
Header ip2string.h (include Mstcpip.h)
Library ntdll.lib
DLL Ntdll.dll

Voir aussi

GetModuleHandle
GetProcAddress
InetNtop
InetPton
LoadLibrary
RtlIpv4AddressToString
RtlIpv4StringToAddress
RtlIpv4StringToAddressEx
RtlIpv6AddressToString
RtlIpv6AddressToStringEx
RtlIpv6StringToAddress
RtlIpv6StringToAddressEx
inet_addr
inet_ntoa