次の方法で共有


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

参照

参照

CAsyncSocket クラス

階層図

CAsyncSocket::Bind

CAsyncSocket::Connect

CAsyncSocket::Create

CAsyncSocket::GetSockName

その他の技術情報

CAsyncSocket のメンバ