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

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

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

注意

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

注意

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

注意

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

Note

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

適用対象

こちらもご覧ください