CSADDR_INFO-Struktur (ws2def.h)
Die CSADDR_INFO-Struktur enthält Windows Sockets-Adressinformationen für einen Socket, Netzwerkdienst oder Namespaceanbieter.
Syntax
typedef struct _CSADDR_INFO {
SOCKET_ADDRESS LocalAddr;
SOCKET_ADDRESS RemoteAddr;
INT iSocketType;
INT iProtocol;
} CSADDR_INFO, *PCSADDR_INFO, *LPCSADDR_INFO;
Member
LocalAddr
Typ: SOCKET_ADDRESS
Die lokale Adresse von Windows Sockets.
Übergeben Sie in einer Clientanwendung diese Adresse an die Bindungsfunktion , um Zugriff auf einen Netzwerkdienst zu erhalten.
Übergeben Sie in einem Netzwerkdienst diese Adresse an die Bindungsfunktion , sodass der Dienst an die entsprechende lokale Adresse gebunden ist.
RemoteAddr
Typ: SOCKET_ADDRESS
Remoteadresse von Windows Sockets.
Es gibt mehrere Verwendungsmöglichkeiten für diese Remoteadresse:
- Sie können diese Remoteadresse verwenden, um über die Verbindungsfunktion eine Verbindung mit dem Dienst herzustellen. Dies ist nützlich, wenn eine Anwendung Sende/empfangene Vorgänge ausführt, die verbindungsorientierte Protokolle umfassen.
- Sie können diese Remoteadresse mit der sendto-Funktion verwenden, wenn Sie über ein verbindungsloses Protokoll (Datagramm) kommunizieren. Wenn Sie ein verbindungsloses Protokoll wie UDP verwenden, ist sendto in der Regel die Art und Weise, wie Sie Daten an das Remotesystem übergeben.
iSocketType
Typ: INT
Der Typ des Windows-Sockets. Mögliche Werte für den Sockettyp sind in der Headerdatei Winsock2.h definiert.
In der folgenden Tabelle sind die möglichen Werte aufgeführt, die für Windows Sockets 2 unterstützt werden:
Wert | Bedeutung |
---|---|
|
Ein Streamsocket. Dies ist ein Protokoll, das Daten als Bytestrom ohne Nachrichtengrenzen sendet. Dieser Sockettyp bietet sequenzierte, zuverlässige, bidirektionale, verbindungsbasierte Bytedatenströme mit einem OOB-Datenübertragungsmechanismus. Dieser Sockettyp verwendet tcp (Transmission Control Protocol) für die Internetadressenfamilie (AF_INET oder AF_INET6). |
|
Ein Datagrammsocket. Dieser Sockettyp unterstützt Datagramme, bei denen es sich um verbindungslose, unzuverlässige Puffer mit einer festen (in der Regel kleinen) maximalen Länge handelt. Dieser Sockettyp verwendet das User Datagram Protocol (UDP) für die Internetadressenfamilie (AF_INET oder AF_INET6).
Dienste verwenden die recvfrom-Funktion , um Datagramme abzurufen. Die Listen- und Akzeptanzfunktionen funktionieren nicht mit Datagrammen. |
|
Ein zuverlässiger Nachrichtendatengrammsocket. Dieser Sockettyp behält Nachrichtengrenzen in Daten bei. Ein Beispiel für diesen Typ ist die PGM-Multicastprotokollimplementierung (Pragmatic General Multicast) in Windows, die häufig als zuverlässige Multicastprogrammierung bezeichnet wird. |
|
Ein sequenzierter Paketstreamsocket. Dieser Sockettyp stellt ein Pseudostreampaket basierend auf Datagrammen bereit. |
iProtocol
Typ: INT
Das verwendete Protokoll. Die möglichen Optionen für den Protokollparameter sind spezifisch für die angegebene Adressfamilie und den angegebenen Sockettyp. Mögliche Werte werden in den Headerdateien Winsock2.h und Wsrm.h definiert.
Im Windows SDK, das für Windows Vista und höher veröffentlicht wurde, wurde die organization der Headerdateien geändert, und dieser Parameter kann einer der Werte des IPPROTO-Enumerationstyps sein, der in der Ws2def.h-Headerdatei definiert ist. Beachten Sie, dass die Ws2def.h-Headerdatei automatisch in Winsock2.h enthalten ist und nie direkt verwendet werden sollte.
In der folgenden Tabelle sind allgemeine Werte für das Protokoll aufgeführt, obwohl viele andere Werte möglich sind.
Hinweise
Die GetAddressByName-Funktion ruft Windows Sockets-Adressinformationen mithilfe CSADDR_INFO-Strukturen ab.
Die getockopt-Funktion , die mit der SO_BSP_STATE Socketoption aufgerufen wird, ruft eine CSADDR_INFO-Struktur für den angegebenen Socket ab.
Anforderungen
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Kopfzeile | ws2def.h (einschließlich Nspapi.h) |