Socket.Bind(EndPoint) メソッド

定義

Socket をローカル エンドポイントと関連付けます。

public:
 void Bind(System::Net::EndPoint ^ localEP);
public void Bind (System.Net.EndPoint localEP);
member this.Bind : System.Net.EndPoint -> unit
Public Sub Bind (localEP As EndPoint)

パラメーター

localEP
EndPoint

Socket に関連付けるローカル EndPoint

例外

localEPnullです。

ソケットへのアクセスを試行しているときにエラーが発生しました。

Socket が閉じられました。

呼び出し履歴の上位にある呼び出し元には、要求された操作に対するアクセス許可がありません。

次のコード例では、 Socket 指定したローカル エンドポイントを使用して をバインドします。

try
{
   aSocket->Bind( anEndPoint );
}
catch ( Exception^ e ) 
{
   Console::WriteLine( "Winsock error: {0}", e );
}
try {
    aSocket.Bind(anEndPoint);
}
catch (Exception e) {
    Console.WriteLine("Winsock error: " + e.ToString());
}
Try
    aSocket.Bind(anEndPoint)
Catch e As Exception
    Console.WriteLine("Winsock error: " & e.ToString())
End Try

注釈

特定のローカル エンドポイントを Bind 使用する必要がある場合は、 メソッドを使用します。 メソッドを呼び出す Bind 前に を呼び出す Listen 必要があります。 特定のローカル エンドポイントを使用する必要がない限り、 メソッドをConnect使用する前に を呼び出Bindす必要はありません。 コネクションレス プロトコルと接続指向プロトコルの両方で、 メソッドを使用 Bind できます。

を呼び出す Bind前に、最初にデータの通信元となるローカル IPEndPoint を作成する必要があります。 どのローカル アドレスが割り当てられているか気にしない場合は、アドレス パラメーターとして を使用して IPAddress.Any を作成IPEndPointできます。基になるサービス プロバイダーは、最も適切なネットワーク アドレスを割り当てます。 これは、複数のネットワーク インターフェイスがある場合にアプリケーションを簡略化するのに役立つ場合があります。 どのローカル ポートが使用されているか気にしない場合は、ポート番号に 0 を IPEndPoint 使用して を作成できます。 この場合、サービス プロバイダーは 1024 から 5000 の間で使用可能なポート番号を割り当てます。

上記の方法を使用する場合は、 を呼び出すことによって、割り当てられているローカル ネットワーク アドレスとポート番号を LocalEndPoint確認できます。 接続指向のプロトコルを使用している場合、 LocalEndPoint メソッドまたは EndConnect メソッドを呼び出Connectした後まで、ローカルに割り当てられたネットワーク アドレスは返されません。 コネクションレス プロトコルを使用している場合は、送受信が完了するまで、この情報にアクセスできません。

UDP ソケットが受信したパケットのインターフェイス情報を受信する場合は、 メソッドを SetSocketOption 呼び出した直後に socket オプションを に設定して PacketInformation 、メソッドを明示的に呼び出す Bind 必要があります。

Note

マルチキャスト データグラムを受信する場合は、マルチキャスト ポート番号を使用して Bind メソッドを呼び出す必要があります。

Note

メソッドを Bind 使用してコネクションレス データグラムを受信する場合は、 メソッドを ReceiveFrom 呼び出す必要があります。

Note

メソッドを呼び出すときに をSocketExceptionBind受け取った場合は、 プロパティをSocketException.ErrorCode使用して特定のエラー コードを取得します。 このコードを取得したら、エラーの詳細な説明については 、Windows ソケット バージョン 2 API エラー コード のドキュメントを参照してください。

Note

このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。 詳細については、「.NET Frameworkのネットワーク トレース」を参照してください。

適用対象

こちらもご覧ください