CAsyncSocket::GetPeerName
更新 : 2007 年 11 月
ソケットが接続されているピア ソケットのアドレスを取得します。
BOOL GetPeerName(
CString& rPeerAddress,
UINT& rPeerPort
);
BOOL GetPeerName(
SOCKADDR* lpSockAddr,
int* lpSockAddrLen
);
パラメータ
rPeerAddress
ドットで区切られた数字列の IP アドレスを受け取る CString オブジェクトへの参照。rPeerPort
ポートを格納する UINT 型変数への参照。lpSockAddr
ピア ソケット名を受け取る SOCKADDR 構造体へのポインタ。lpSockAddrLen
lpSockAddr 内のアドレス長へのポインタ。アドレス長はバイト単位です。関数からの戻り時、引数 lpSockAddrLen には実際の lpSockAddr のサイズがバイト単位で返されます。
戻り値
正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。GetLastError を呼び出すと、固有のエラー コードを取得できます。このメンバ関数では、次のエラーが発生します。
WSANOTINITIALISED この API を使う前に AfxSocketInit の呼び出しが正常終了していることが必要です。
WSAENETDOWN Windows ソケットの実装が、ネットワーク サブシステムの異常を検出しました。
WSAEFAULT 引数 lpSockAddrLen の長さが不足しています。
WSAEINPROGRESS 実行中の Windows ソケット呼び出しがブロッキングされています。
WSAENOTCONN ソケットが接続されていません。
WSAENOTSOCK 記述子がソケットではありません。
解説
IPv6 アドレスを処理するには、CAsyncSocket::GetPeerNameEx を使用します。
必要条件
ヘッダー : afxsock.h