CSADDR_INFO-Struktur (nspapi.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 Bindfunktion , um Zugriff auf einen Netzwerkdienst zu erhalten.
Übergeben Sie in einem Netzwerkdienst diese Adresse an die Bindfunktion , damit der Dienst an die entsprechende lokale Adresse gebunden ist.
RemoteAddr
Typ: SOCKET_ADDRESS
Windows Sockets-Remoteadresse.
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 Winsock2.h-Headerdatei 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 bytebasierte 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 Funktionen "Listen" und "accept" funktionieren nicht mit Datagrammen. |
|
Ein zuverlässiger Nachrichten-Datagrammsocket. 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 bereit, das auf Datagrammen basiert. |
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.
Auf der für Windows Vista und höher veröffentlichten Windows SDK 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 niemals 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 von CSADDR_INFO-Strukturen ab.
Die getockopt-Funktion , die mit der Option SO_BSP_STATE Socket aufgerufen wird, ruft eine CSADDR_INFO-Struktur für den angegebenen Socket ab.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Kopfzeile | nspapi.h (Nspapi.h einschließen) |