Socket.Bind(EndPoint) Methode

Definition

Ordnet einem Socket einen lokalen Endpunkt zu.

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)

Parameter

localEP
EndPoint

Der lokale EndPoint, der dem Socket zugeordnet werden soll.

Ausnahmen

localEP ist null.

Fehler beim Versuch, auf den Socket zuzugreifen.

Der Socket wurde geschlossen.

Ein höher in der Aufrufliste befindlicher Aufrufer verfügt nicht über die Berechtigung für den angeforderten Vorgang.

Beispiele

Im folgenden Codebeispiel wird eine Socket mithilfe des angegebenen lokalen Endpunkts gebunden.

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

Hinweise

Verwenden Sie die Bind -Methode, wenn Sie einen bestimmten lokalen Endpunkt verwenden müssen. Sie müssen aufrufen Bind , bevor Sie die Listen -Methode aufrufen können. Sie müssen nicht aufrufen Bind , bevor Sie die Connect -Methode verwenden, es sei denn, Sie müssen einen bestimmten lokalen Endpunkt verwenden. Sie können die Bind -Methode sowohl für verbindungslose als auch für verbindungsorientierte Protokolle verwenden.

Vor dem Aufrufen Bindvon müssen Sie zuerst die lokale IPEndPoint Datei erstellen, aus der Daten kommuniziert werden sollen. Wenn Es Ihnen egal ist, welche lokale Adresse zugewiesen ist, können Sie mit IPEndPointIPAddress.Any als Adressparameter erstellen, und der zugrunde liegende Dienstanbieter weist die am besten geeignete Netzwerkadresse zu. Dies kann ihre Anwendung vereinfachen, wenn Sie über mehrere Netzwerkschnittstellen verfügen. Wenn Sie sich nicht darum kümmern, welcher lokale Port verwendet wird, können Sie einen IPEndPoint mit 0 für die Portnummer erstellen. In diesem Fall weist der Dienstanbieter eine verfügbare Portnummer zwischen 1024 und 5000 zu.

Wenn Sie den obigen Ansatz verwenden, können Sie ermitteln, welche lokale Netzwerkadresse und Portnummer zugewiesen wurde, indem Sie aufrufen.LocalEndPoint Wenn Sie ein verbindungsorientiertes Protokoll verwenden, wird die lokal zugewiesene Netzwerkadresse erst zurückgegeben, LocalEndPoint nachdem Sie die Connect - oder EndConnect -Methode aufgerufen haben. Wenn Sie ein verbindungsloses Protokoll verwenden, haben Sie erst dann Zugriff auf diese Informationen, wenn Sie ein Senden oder Empfangen abgeschlossen haben.

Wenn ein UDP-Socket Schnittstelleninformationen zu empfangenden Paketen empfangen möchte, sollte die SetSocketOption -Methode explizit aufgerufen werden, wobei die Socketoption unmittelbar nach dem Aufruf der Bind -Methode auf PacketInformation festgelegt ist.

Hinweis

Wenn Sie Multicast-Datagramme empfangen möchten, müssen Sie die Bind -Methode mit einer Multicastportnummer aufrufen.

Hinweis

Sie müssen die Bind -Methode aufrufen, wenn Sie mit der ReceiveFrom -Methode verbindungslose Datagramme empfangen möchten.

Hinweis

Wenn Sie beim Aufrufen der Bind -Methode eine SocketException erhalten, verwenden Sie die SocketException.ErrorCode -Eigenschaft, um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie in der Dokumentation zu Windows Sockets Version 2-API-Fehlercode eine ausführliche Beschreibung des Fehlers.

Hinweis

Dieser Member gibt Ablaufverfolgungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in der Anwendung aktivieren. Weitere Informationen finden Sie unter Netzwerkablaufverfolgung in .NET Framework.

Gilt für:

Weitere Informationen