Fonction RtlIpv6StringToAddressW (ip2string.h)
La fonction RtlIpv6StringToAddress convertit une représentation sous forme de chaîne d’une adresse IPv6 en adresse IPv6 binaire.
Syntaxe
NTSYSAPI NTSTATUS RtlIpv6StringToAddressW(
[in] PCWSTR S,
[out] PCWSTR *Terminator,
[out] in6_addr *Addr
);
Paramètres
[in] S
Pointeur vers une mémoire tampon contenant la NULLreprésentation sous forme de chaîne terminée de l’adresse IPv6.
[out] Terminator
Paramètre qui reçoit un pointeur vers le caractère qui a terminé la chaîne convertie. Cela peut être utilisé par l’appelant pour extraire plus d’informations de la chaîne.
[out] Addr
Pointeur où la représentation binaire de l’adresse IPv6 doit être stockée.
Valeur de retour
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.
Retourner le code | Description |
---|---|
|
Un paramètre non valide a été passé à la fonction. Cette erreur est retournée si la chaîne pointée par le paramètre S ne contenait pas de représentation sous forme de chaîne appropriée d’une adresse IPv6.
Ce code d’erreur est défini dans le fichier d’en-tête Ntstatus.h. |
|
Utilisez formatMessage pour obtenir la chaîne de message pour l’erreur retournée. |
Remarques
La fonction RtlIpv6StringToAddress est utilisée pour convertir une représentation sous forme de chaîne de l’adresse IPv6 en adresse IPv6 retournée dans l’ordre réseau (octets classés de gauche à droite).
RtlIpv6StringToAddress 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 conversion de chaîne en adresse IP.
La chaîne pointée par le paramètre S doit être représentée sous la forme d’une chaîne d’adresse IPv6. La représentation sous forme de chaîne de base d’une adresse IPv6 se compose de 8 nombres hexadécimaux séparés par des points-virgules. Une chaîne de nombres zéro consécutifs peut être remplacée par un double-deux-points. Il ne peut y avoir qu’un double-signe deux-points dans la représentation sous forme de chaîne de l’adresse IPv6. Les 32 derniers bits peuvent être représentés en notation en pointillés de style IPv4 si l’adresse est une adresse compatible IPv4, une adresse IPv4 mappée à IPv6 ou une adresse ISATAP. Pour plus d’informations, consultez la section 5 de RFC 5942 publiée par l’IETF.
En cas de réussite, le paramètre Terminator pointe vers le caractère qui a terminé la chaîne qui a été convertie. Cela permet à une application de transmettre une chaîne qui contient et une adresse IP ainsi que des informations supplémentaires à la fonction RtlIpv6StringToAddress, puis d’analyser les informations restantes.
Quand unicode et _UNICODE ne sont pas définis, RtlIpv6StringToAddress est défini sur RtlIpv6StringToAddressA, la version ANSI de cette fonction. Les paramètres S et Terminator sont définis sur le type de données PCSTR.
La structure IN6_ADDR est définie dans le fichier d’en-tête In6addr.h.
Une bibliothèque d’importation contenant la fonction RtlIpv6StringToAddress n’est pas incluse dans le Kit de développement logiciel Microsoft Windows (SDK) publié pour Windows Vista. La fonction RtlIpv6StringToAddress est incluse dans la bibliothèque d’importation Ntdll.lib incluse dans le Kit de pilotes Windows (WDK). Une application peut également utiliser les fonctions GetModuleHandle et GetProcAddress pour récupérer le pointeur de fonction à partir du Ntdll.dll et appeler cette fonction.
Note
L’en-tête ip2string.h définit RtlIpv6StringToAddress comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows Vista [applications de bureau | Applications UWP] |
serveur minimum pris en charge | Windows Server 2008 [applications de bureau | Applications UWP] |
plateforme cible | Windows |
d’en-tête | ip2string.h (include Mstcpip.h, Ip2string.h) |
bibliothèque | ntdll.lib |
DLL | ntdll.dll |