Lire en anglais

Partager via


CSocketAddr, classe

Cette classe fournit des méthodes pour convertir des noms d’hôtes en adresses hôtes, prenant en charge les formats IPv4 et IPV6.

Syntaxe

class CSocketAddr

Membres

Constructeurs publics

Nom Description
CSocketAddr ::CSocketAddr Constructeur .

Méthodes publiques

Nom Description
CSocketAddr ::FindAddr Appelez cette méthode pour convertir le nom d’hôte fourni en adresse hôte.
CSocketAddr ::FindINET4Addr Appelez cette méthode pour convertir le nom d’hôte IPv4 en adresse hôte.
CSocketAddr ::FindINET6Addr Appelez cette méthode pour convertir le nom d’hôte IPv6 en l’adresse de l’hôte.
CSocketAddr ::GetAddrInfo Appelez cette méthode pour renvoyer un pointeur vers un élément spécifique de la addrinfo liste.
CSocketAddr ::GetAddrInfoList Appelez cette méthode pour retourner un pointeur vers la addrinfo liste.

Notes

Cette classe fournit une approche indépendante de la version IP pour rechercher des adresses réseau à utiliser avec les fonctions API de sockets Windows et les wrappers de sockets dans les bibliothèques.

Les membres de cette classe utilisés pour rechercher des adresses réseau utilisent la fonction d’API Win32 getaddrinfo. La version ANSI ou UNICODE de la fonction est appelée selon que votre code est compilé pour ANSI ou UNICODE.

Cette classe prend en charge les adresses réseau IPv4 etIPv6.

Spécifications

En-tête : atlsocket.h

CSocketAddr ::CSocketAddr

Constructeur .

CSocketAddr();

Notes

Crée un CSocketAddr objet et initialise la liste liée contenant des informations de réponse sur l’hôte.

CSocketAddr ::FindAddr

Appelez cette méthode pour convertir le nom d’hôte fourni en adresse hôte.

int FindAddr(
    const TCHAR *szHost,
    const TCHAR *szPortOrServiceName,
    int flags,
    int addr_family,
    int sock_type,
    int ai_proto);

int FindAddr(
    const TCHAR *szHost,
    int nPortNo,
    int flags,
    int addr_family,
    int sock_type,
    int ai_proto);

Paramètres

szHost
Nom d’hôte ou adresse IP en pointillé.

szPortOrServiceName
Numéro de port ou nom du service sur l’hôte.

nPortNo
Numéro de port.

flags
0 ou combinaison de AI_PASSIVE, de AI_CANONNAME ou de AI_NUMERICHOST.

addr_family
Famille d’adresses (par exemple, PF_INET).

sock_type
Type de socket (par exemple, SOCK_STREAM).

ai_proto
Protocole (par exemple, IPPROTO_IP ou IPPROTO_IPV6).

Valeur de retour

Retourne zéro si l’adresse est calculée avec succès. Retourne un code d’erreur de socket Windows différent de zéro en cas d’échec. Si elle réussit, l’adresse calculée est stockée dans une liste liée qui peut être référencée à l’aide CSocketAddr::GetAddrInfoList et CSocketAddr::GetAddrInfo.

Notes

Le paramètre de nom d’hôte peut être au format IPv4 ou IPv6. Cette méthode appelle la fonction API Win32 getaddrinfo pour effectuer la conversion.

CSocketAddr ::FindINET4Addr

Appelez cette méthode pour convertir le nom d’hôte IPv4 en adresse hôte.

int FindINET4Addr(
    const TCHAR *szHost,
    int nPortNo,
    int flags = 0,
    int sock_type = SOCK_STREAM);

Paramètres

szHost
Nom d’hôte ou adresse IP en pointillé.

nPortNo
Numéro de port.

flags
0 ou combinaison de AI_PASSIVE, de AI_CANONNAME ou de AI_NUMERICHOST.

sock_type
Type de socket (par exemple, SOCK_STREAM).

Valeur de retour

Retourne zéro si l’adresse est calculée avec succès. Retourne un code d’erreur de socket Windows différent de zéro en cas d’échec. Si elle réussit, l’adresse calculée est stockée dans une liste liée qui peut être référencée à l’aide CSocketAddr::GetAddrInfoList et CSocketAddr::GetAddrInfo.

Notes

Cette méthode appelle la fonction API Win32 getaddrinfo pour effectuer la conversion.

CSocketAddr ::FindINET6Addr

Appelez cette méthode pour convertir le nom d’hôte IPv6 en l’adresse de l’hôte.

int FindINET6Addr(
    const TCHAR *szHost,
    int nPortNo,
    int flags = 0,
    int sock_type = SOCK_STREAM);

Paramètres

szHost
Nom d’hôte ou adresse IP en pointillé.

nPortNo
Numéro de port.

flags
0 ou combinaison de AI_PASSIVE, de AI_CANONNAME ou de AI_NUMERICHOST.

sock_type
Type de socket (par exemple, SOCK_STREAM).

Valeur de retour

Retourne zéro si l’adresse est calculée avec succès. Retourne un code d’erreur de socket Windows différent de zéro en cas d’échec. Si elle réussit, l’adresse calculée est stockée dans une liste liée qui peut être référencée à l’aide CSocketAddr::GetAddrInfoList et CSocketAddr::GetAddrInfo.

Notes

Cette méthode appelle la fonction API Win32 getaddrinfo pour effectuer la conversion.

CSocketAddr ::GetAddrInfo

Appelez cette méthode pour renvoyer un pointeur vers un élément spécifique de la addrinfo liste.

addrinfo* const GetAddrInfo(int nIndex = 0) const;

Paramètres

nIndex
Référence à un élément spécifique dans la liste addrinfo .

Valeur de retour

Retourne un pointeur vers la addrinfo structure référencée par nIndex dans la liste liée contenant des informations de réponse sur l’hôte.

CSocketAddr ::GetAddrInfoList

Appelez cette méthode pour retourner un pointeur vers la addrinfo liste.

addrinfo* const GetAddrInfoList() const;

Valeur de retour

Pointeur vers une liste liée d’une ou plusieurs addrinfo structures contenant des informations de réponse sur l’hôte. Pour plus d’informations, consultez la structure addrinfo.

Voir aussi

Vue d’ensemble de la classe