Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka:
Knihovna ATL (Active Template Library) se nadále podporuje. Už ale nepřidáme funkce ani aktualizujeme dokumentaci.
Tato třída poskytuje metody pro převod názvů hostitelů na adresy hostitelů, které podporují formáty IPv4 i IPV6.
Syntaxe
class CSocketAddr
Členové
Veřejné konstruktory
| Název | Popis |
|---|---|
| CSocketAddr::CSocketAddr | Konstruktor |
Veřejné metody
| Název | Popis |
|---|---|
| CSocketAddr::FindAddr | Voláním této metody převeďte zadaný název hostitele na adresu hostitele. |
| CSocketAddr::FindINET4Addr | Voláním této metody převeďte název hostitele IPv4 na adresu hostitele. |
| CSocketAddr::FindINET6Addr | Voláním této metody převeďte název hostitele IPv6 na adresu hostitele. |
| CSocketAddr::GetAddrInfo | Voláním této metody vrátíte ukazatel na určitý prvek v addrinfo seznamu. |
| CSocketAddr::GetAddrInfoList | Voláním této metody vrátíte ukazatel na addrinfo seznam. |
Poznámky
Tato třída poskytuje přístup nezávislý na verzi PROTOKOLU IP pro vyhledávání síťových adres pro použití s funkcemi rozhraní API soketů Windows a obálkami soketů v knihovnách.
Členové této třídy, které se používají k vyhledání síťových adres, používají funkci rozhraní API Win32 getaddrinfo. Verze funkce ANSI nebo UNICODE se volá v závislosti na tom, jestli je váš kód zkompilován pro ANSI nebo UNICODE.
Tato třída podporuje jak síťové adresy IPv4, tak IPv6.
Požadavky
Hlavička: atlsocket.h
CSocketAddr::CSocketAddr
Konstruktor
CSocketAddr();
Poznámky
Vytvoří nový CSocketAddr objekt a inicializuje propojený seznam obsahující informace o odpovědi o hostiteli.
CSocketAddr::FindAddr
Voláním této metody převeďte zadaný název hostitele na adresu hostitele.
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);
Parametry
szHost
Název hostitele nebo tečkovaná IP adresa.
szPortOrServiceName
Číslo portu nebo název služby na hostiteli.
nPortNo
Číslo portu
vlajky
0 nebo kombinace AI_PASSIVE, AI_CANONNAME nebo AI_NUMERICHOST.
addr_family
Rodina adres (například PF_INET).
sock_type
Typ soketu (například SOCK_STREAM).
ai_proto
Protokol (například IPPROTO_IP nebo IPPROTO_IPV6).
Návratová hodnota
Vrátí nulu, pokud se adresa úspěšně vypočítá. Vrátí nenulový kód chyby rozhraní Windows Socket při selhání. V případě úspěchu se počítaná adresa uloží do propojeného seznamu, na který se může odkazovat pomocí CSocketAddr::GetAddrInfoList a CSocketAddr::GetAddrInfo.
Poznámky
Parametr názvu hostitele může být ve formátu IPv4 nebo IPv6. Tato metoda volá funkci rozhraní API Win32 getaddrinfo k provedení převodu.
CSocketAddr::FindINET4Addr
Voláním této metody převeďte název hostitele IPv4 na adresu hostitele.
int FindINET4Addr(
const TCHAR *szHost,
int nPortNo,
int flags = 0,
int sock_type = SOCK_STREAM);
Parametry
szHost
Název hostitele nebo tečkovaná IP adresa.
nPortNo
Číslo portu
vlajky
0 nebo kombinace AI_PASSIVE, AI_CANONNAME nebo AI_NUMERICHOST.
sock_type
Typ soketu (například SOCK_STREAM).
Návratová hodnota
Vrátí nulu, pokud se adresa úspěšně vypočítá. Vrátí nenulový kód chyby rozhraní Windows Socket při selhání. V případě úspěchu se počítaná adresa uloží do propojeného seznamu, na který se může odkazovat pomocí CSocketAddr::GetAddrInfoList a CSocketAddr::GetAddrInfo.
Poznámky
Tato metoda volá funkci rozhraní API Win32 getaddrinfo k provedení převodu.
CSocketAddr::FindINET6Addr
Voláním této metody převeďte název hostitele IPv6 na adresu hostitele.
int FindINET6Addr(
const TCHAR *szHost,
int nPortNo,
int flags = 0,
int sock_type = SOCK_STREAM);
Parametry
szHost
Název hostitele nebo tečkovaná IP adresa.
nPortNo
Číslo portu
vlajky
0 nebo kombinace AI_PASSIVE, AI_CANONNAME nebo AI_NUMERICHOST.
sock_type
Typ soketu (například SOCK_STREAM).
Návratová hodnota
Vrátí nulu, pokud se adresa úspěšně vypočítá. Vrátí nenulový kód chyby rozhraní Windows Socket při selhání. V případě úspěchu se počítaná adresa uloží do propojeného seznamu, na který se může odkazovat pomocí CSocketAddr::GetAddrInfoList a CSocketAddr::GetAddrInfo.
Poznámky
Tato metoda volá funkci rozhraní API Win32 getaddrinfo k provedení převodu.
CSocketAddr::GetAddrInfo
Voláním této metody vrátíte ukazatel na určitý prvek v addrinfo seznamu.
addrinfo* const GetAddrInfo(int nIndex = 0) const;
Parametry
nIndex
Odkaz na určitý prvek v seznamu addrinfo .
Návratová hodnota
Vrátí ukazatel na addrinfo strukturu odkazovanou nIndex v propojeném seznamu obsahující informace o odpovědi o hostiteli.
CSocketAddr::GetAddrInfoList
Voláním této metody vrátíte ukazatel na addrinfo seznam.
addrinfo* const GetAddrInfoList() const;
Návratová hodnota
Ukazatel na propojený seznam jedné nebo více addrinfo struktur obsahujících informace o odpovědi o hostiteli. Další informace naleznete v tématu addrinfo struktura.