CAsyncSocket::GetSockName
Rufen Sie die Memberfunktion auf, um den lokalen Namen für einen Socket abzurufen.
BOOL GetSockName(
CString& rSocketAddress,
UINT& rSocketPort
);
BOOL GetSockName(
SOCKADDR* lpSockAddr,
int* lpSockAddrLen
);
Parameter
rSocketAddress
Verweis auf ein CString-Objekt, das eine durch Punkte getrennte Zahl IP-Adresse empfängt.rSocketPort
Verweis auf UINT, der einen Port speichert.lpSockAddr
Ein Zeiger auf eine SOCKADDR-Struktur, die die Adresse des Sockets empfängt.lpSockAddrLen
Ein Zeiger auf die Länge der Adresse in lpSockAddr in Bytes.
Rückgabewert
ungleich 0 (null), wenn die Funktion erfolgreich; andernfalls 0 und ein bestimmter Fehlercode können abgerufen werden, indem Sie GetLastError aufruft.Die folgenden Fehler gelten für diese Memberfunktion zu:
Vor der Verwendung dieser APIs WSANOTINITIALISED einem erfolgreichen AfxSocketInit muss auftreten.
WSAENETDOWN, das die Windows Socket-Implementierung hat, dass das Netzwerksubsystem fehlgeschlagen ist.
WSAEFAULT das lpSockAddrLen-Argument ist nicht groß genug.
Ist blockierenden Windows Socket-Vorgang WSAEINPROGRESS A ausgeführt.
WSAENOTSOCK der Deskriptor ist kein Socket.
WSAEINVAL der Socket ist nicht auf eine Adresse mit Bind gebunden.
Hinweise
Dieser Aufruf ist besonders nützlich, wenn ein Connect Aufruf ausgeführt wurde, ohne Bind zuerst ausgeführt wird; dieser Aufruf stellt die einzige Möglichkeit, durch die Sie die lokale Zuordnung bestimmen können, die vom System festgelegt wurde.
Um Adressen IPv6 zu behandeln, verwenden Sie CAsyncSocket::GetSockNameEx
Anforderungen
Header: afxsock.h