Socket.Bind(EndPoint) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ordnet einen Socket 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
Ausnahmen
localEP ist null.
Beim Versuch, auf den Socket zuzugreifen, ist ein Fehler aufgetreten.
Das Socket wurde geschlossen.
Ein aufrufer höher im Aufrufstapel verfügt nicht über die Berechtigung für den angeforderten Vorgang.
Beispiele
Im folgenden Codebeispiel wird eine Socket Verwendung des angegebenen lokalen Endpunkts gebunden.
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 vor der Verwendung der Connect Methode aufrufenBind, 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 Bindmüssen Sie zuerst das Lokale IPEndPoint erstellen, aus dem Sie Daten kommunizieren möchten. Wenn Ihnen nicht wichtig ist, welche lokale Adresse zugewiesen ist, können Sie eine IPEndPoint Verwendung IPAddress.Any als Adressparameter erstellen, und der zugrunde liegende Dienstanbieter weist die am besten geeignete Netzwerkadresse zu. Dies kann dazu beitragen, Ihre Anwendung zu vereinfachen, wenn Sie über mehrere Netzwerkschnittstellen verfügen. Wenn Sie sich nicht darum kümmern, welcher lokale Port verwendet wird, können Sie für IPEndPoint die Portnummer 0 mit 0 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 durch Aufrufen der LocalEndPointNummer zugewiesen wurde. Wenn Sie ein verbindungsorientiertes Protokoll verwenden, wird die lokal zugewiesene Netzwerkadresse erst zurückgegeben, LocalEndPoint nachdem Sie einen Aufruf an die Connect Methode vorgenommen EndConnect haben. Wenn Sie ein verbindungsloses Protokoll verwenden, haben Sie keinen Zugriff auf diese Informationen, bis 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 Aufrufen der Bind Methode festgelegt PacketInformation 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 verbindungslose Datagramme mithilfe der ReceiveFrom Methode empfangen möchten.
Hinweis
Wenn Sie beim Aufrufen der Bind Methode eine SocketException Erhalten haben, verwenden Sie die SocketException.ErrorCode Eigenschaft, um den spezifischen Fehlercode abzurufen. Nachdem Sie diesen Code erhalten haben, finden Sie in der Windows Sockets Version 2-API-Fehlercodedokumentation eine detaillierte Beschreibung des Fehlers.
Hinweis
Dieses Mitglied gibt Protokollierungsinformationen aus, wenn Sie die Netzwerkablaufverfolgung in Ihrer Anwendung aktivieren. Weitere Informationen finden Sie unter Network Tracing in .NET Framework.