次の方法で共有


Socket.LocalEndPoint プロパティ

ローカル エンドポイントを取得します。

Public ReadOnly Property LocalEndPoint As EndPoint
[C#]
public EndPoint LocalEndPoint {get;}
[C++]
public: __property EndPoint* get_LocalEndPoint();
[JScript]
public function get LocalEndPoint() : EndPoint;

プロパティ値

Socket が通信に使用している EndPoint

例外

例外の種類 条件
SocketException ソケットへのアクセスを試みているときにエラーが発生しました。詳細については「解説」を参照してください。
ObjectDisposedException Socket は閉じられています。

解説

LocalEndPoint プロパティは、 Socket がバインディングされているローカル IP アドレスおよびポート番号を格納する EndPoint を取得します。情報を取得する前に、この EndPointIPEndPoint にキャストする必要があります。次に、 IPEndPoint.Address メソッドを呼び出してローカル IPAddress を取得し、 IPEndPoint.Port メソッドでローカル ポート番号を取得します。

通常、 LocalEndPoint プロパティは、 Bind メソッドを呼び出した後に設定されます。システムがソケットのローカル IP アドレスとポート番号を割り当てることができる場合、 LocalEndPoint プロパティは最初の I/O 操作後に設定されます。コネクション指向のプロトコルの場合は、最初の I/O 操作で Connect メソッドまたは Accept メソッドを呼び出します。コネクションレス指向のプロトコルの場合、最初の I/O 操作は送信呼び出しまたは受信呼び出しとなります。

メモ    SocketException が発生した場合は、 SocketException.ErrorCode を使用して具体的なエラー コードを取得してください。このコードを取得したら、Windows Socket Version 2 API エラー コードのマニュアルから、エラーの詳細情報を確認できます。これは MSDN から入手できます。

使用例

[Visual Basic, C#, C++] ローカル エンドポイントおよびリモート エンドポイントを取得して表示する例を次に示します。

 
s.Connect(lep)

' Using the RemoteEndPoint property.
Console.WriteLine("I am connected to ")
Console.WriteLine(IPAddress.Parse(CType(s.RemoteEndPoint, IPEndPoint).Address.ToString()))
Console.WriteLine("on port number ")
Console.WriteLine(CType(s.RemoteEndPoint, IPEndPoint).Port.ToString())

' Using the LocalEndPoint property.
Console.WriteLine("My local IpAddress is :")
Console.WriteLine(IPAddress.Parse(CType(s.LocalEndPoint, IPEndPoint).Address.ToString()))
Console.WriteLine("I am connected on port number ")
Console.WriteLine(CType(s.LocalEndPoint, IPEndPoint).Port.ToString())


[C#] 
s.Connect (lep);

// Using the RemoteEndPoint property.
Console.WriteLine ("I am connected to " + IPAddress.Parse (((IPEndPoint)s.RemoteEndPoint).Address.ToString ()) + "on port number " + ((IPEndPoint)s.RemoteEndPoint).Port.ToString ());

// Using the LocalEndPoint property.
Console.WriteLine ("My local IpAddress is :" + IPAddress.Parse (((IPEndPoint)s.LocalEndPoint).Address.ToString ()) + "I am connected on port number " + ((IPEndPoint)s.LocalEndPoint).Port.ToString ());


[C++] 
s->Connect(lep);

// Uses the RemoteEndPoint property.
Console::Write("I am connected to ");
Console::Write(IPAddress::Parse((__try_cast<IPEndPoint *>(s->RemoteEndPoint)->Address)->ToString()));
Console::Write("on port number ");
Console::WriteLine(__box(__try_cast<IPEndPoint *>(s->RemoteEndPoint)->Port)->ToString());

// Uses the LocalEndPoint property.
Console::Write("My local IpAddress is :");
Console::Write(IPAddress::Parse((__try_cast<IPEndPoint *>(s->LocalEndPoint)->Address)->ToString()));
Console::Write("I am connected on port number ");
Console::WriteLine(__box(__try_cast<IPEndPoint *>(s->LocalEndPoint)->Port)->ToString());

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard

参照

Socket クラス | Socket メンバ | System.Net.Sockets 名前空間 | EndPoint | IPEndPoint | Bind