Socket.Bind(EndPoint) Socket.Bind(EndPoint) Socket.Bind(EndPoint) Socket.Bind(EndPoint) Method

定義

Socket をローカル エンドポイントと関連付けます。Associates a Socket with a local endpoint.

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 EndPoint EndPoint EndPoint

Socket に関連付けるローカル EndPointThe local EndPoint to associate with the Socket.

例外

ソケットへのアクセスを試行しているときにエラーが発生しました。An error occurred when attempting to access the socket.

コール スタックの上位にある呼び出し元が、要求された操作のアクセス許可を保持していません。A caller higher in the call stack does not have permission for the requested operation.

次のコード例ではSocket 、指定したローカルエンドポイントを使用してをバインドします。The following code example binds a Socket using the specified local endpoint.

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ローカルエンドポイントを使用する必要がある場合は、メソッドを使用します。Use the Bind method if you need to use a specific local endpoint. メソッドListenを呼び出すBind前に、を呼び出す必要があります。You must call Bind before you can call the Listen method. 特定のローカルエンドポイントをBind使用する必要Connectがない限り、メソッドを使用する前にを呼び出す必要はありません。You do not need to call Bind before using the Connect method unless you need to use a specific local endpoint. このメソッドは、 Bindコネクションレスプロトコルと接続指向プロトコルの両方で使用できます。You can use the Bind method on both connectionless and connection-oriented protocols.

を呼び出すBind前に、まず、データをIPEndPoint通信するローカルのを作成する必要があります。Before calling Bind, you must first create the local IPEndPoint from which you intend to communicate data. どのローカルアドレスが割り当てられてもかまわない場合は、アドレスIPEndPointパラメーター IPAddress.Anyとしてを使用してを作成すると、基になるサービスプロバイダーによって最も適切なネットワークアドレスが割り当てられます。If you do not care which local address is assigned, you can create an IPEndPoint using IPAddress.Any as the address parameter, and the underlying service provider will assign the most appropriate network address. これは、複数のネットワークインターフェイスがある場合に、アプリケーションの簡素化に役立つ可能性があります。This might help simplify your application if you have multiple network interfaces. 使用されるローカルポートを気にしない場合は、ポート番号IPEndPointとして0を使用してを作成できます。If you do not care which local port is used, you can create an IPEndPoint using 0 for the port number. この場合、サービスプロバイダーは1024と5000の間の使用可能なポート番号を割り当てます。In this case, the service provider will assign an available port number between 1024 and 5000.

上記の方法を使用する場合は、 LocalEndPointを呼び出すことによって、どのローカルネットワークアドレスとポート番号が割り当てられているかを調べることができます。If you use the above approach, you can discover what local network address and port number has been assigned by calling the LocalEndPoint. 接続指向プロトコルを使用している場合、 LocalEndPoint Connectは、メソッドまたはEndConnectメソッドを呼び出した後に、ローカルに割り当てられたネットワークアドレスを返しません。If you are using a connection-oriented protocol, LocalEndPoint will not return the locally assigned network address until after you have made a call to the Connect or EndConnect method. コネクションレスプロトコルを使用している場合は、送信または受信が完了するまで、この情報にアクセスすることはできません。If you are using a connectionless protocol, you will not have access to this information until you have completed a send or receive.

UDP ソケットが受信パケットSetSocketOptionのインターフェイス情報を受け取る場合は、メソッドを呼び出しBindた直後に socket オプションをにPacketInformation設定して、メソッドを明示的に呼び出す必要があります。If a UDP socket wants to receive interface information on received packets, the SetSocketOption method should be explicitly called with the socket option set to PacketInformation immediately after calling the Bind method.

注意

マルチキャストデータグラムを受信する場合は、マルチキャストポートBind番号を指定してメソッドを呼び出す必要があります。If you intend to receive multicast datagrams, you must call the Bind method with a multicast port number.

注意

メソッドを使用しBindて、コネクションレスのデータグラムを受信する場合は、メソッドを呼び出す必要があります。 ReceiveFromYou must call the Bind method if you intend to receive connectionless datagrams using the ReceiveFrom method.

注意

メソッドのSocketException Bind呼び出し時にを受け取った場合は、 SocketException.ErrorCodeプロパティを使用して特定のエラーコードを取得します。If you receive a SocketException when calling the Bind method, use the SocketException.ErrorCode property to obtain the specific error code. このコードを取得したら、 Windows Sockets version 2 API エラーコードのドキュメントを参照して、エラーの詳細な説明を参照してください。After you have obtained this code, refer to the Windows Sockets version 2 API error code documentation for a detailed description of the error.

注意

このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。This member outputs trace information when you enable network tracing in your application. 詳細については、「 .NET Framework のネットワークトレース」を参照してください。For more information, see Network Tracing in the .NET Framework.

セキュリティ

SocketPermission
によっlocalEPて定義されたホストからの接続を受け入れる場合。for accepting connections from the host defined by localEP. 関連付けられた列挙型:AcceptAssociated enumeration: Accept

適用対象

こちらもご覧ください