Kompatible Namensauflösung für TCP/IP im Windows Sockets 1.1 SPI

Windows Sockets 1.1 definierte eine Reihe von Routinen, die für die IPv4-Namensauflösung mit TCP/IP-Netzwerken verwendet wurden. Diese werden üblicherweise als GetXbyY-Funktionen bezeichnet und umfassen Folgendes.

Gethostname

gethostbyaddr

Gethostbyname

getprotobyname

getprotobynumber

getservbyname

getservbyport

Asynchrone Versionen dieser Funktionen wurden ebenfalls definiert.

WSAAsyncGetHostByAddr

WSAAsyncGetHostByName

WSAAsyncGetProtoByName

WSAAsyncGetProtoByNumber

WSAAsyncGetServByName

WSAAsyncGetServByPort

Diese Funktionen sind spezifisch für TCP/IP-Netzwerke. Entwicklern protokollunabhängiger Anwendungen wird davon abgeraten, diese transportspezifischen Funktionen weiterhin zu nutzen. Um jedoch eine strikte Abwärtskompatibilität mit Windows Sockets 1.1 beizubehalten, werden die vorherigen Funktionen weiterhin unterstützt, solange mindestens ein Namespaceanbieter vorhanden ist, der die AF_INET Adressfamilie unterstützt.

Die Ws2_32.dll implementiert diese Kompatibilitätsfunktionen in Bezug auf die neuen protokollunabhängigen Namensauflösungsfunktionen mithilfe einer entsprechenden Sequenz von WSALookupServiceBegin, WSALookupServiceNext und WSALookupServiceEnd-Funktionsaufrufen . Die Details zur Zuordnung der GetXbyY-Funktionen zu Namensauflösungsfunktionen finden Sie unten. Die Ws2_32.dll behandelt die Unterschiede zwischen den asynchronen und synchronen Versionen der GetXbyY-Funktionen , sodass nur die Implementierung der synchronen GetXbyY-Funktionen erläutert wird.