Socket.Bind(EndPoint) Methode

Definitie

Hiermee koppelt u een Socket aan een lokaal eindpunt.

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)

Parameters

localEP
EndPoint

De lokale EndPoint die moet worden gekoppeld aan de Socket.

Uitzonderingen

localEP is null.

Er is een fout opgetreden bij het openen van de socket.

Een aanroeper hoger in de aanroepstack heeft geen machtiging voor de aangevraagde bewerking.

Voorbeelden

In het volgende codevoorbeeld wordt een Socket binding gemaakt met behulp van het opgegeven lokale eindpunt.

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

Opmerkingen

Gebruik de Bind methode als u een specifiek lokaal eindpunt wilt gebruiken. U moet aanroepen Bind voordat u de Listen methode kunt aanroepen. U hoeft de methode niet aan te roepen Bind voordat u de Connect methode gebruikt, tenzij u een specifiek lokaal eindpunt moet gebruiken. U kunt de Bind methode gebruiken voor zowel verbindingsloze als verbindingsgeoriënteerde protocollen.

Voordat u aanroept Bind, moet u eerst de lokale IPEndPoint maken waaruit u gegevens wilt communiceren. Als u niet weet welk lokaal adres is toegewezen, kunt u een IPEndPoint using IPAddress.Any maken als de adresparameter en wijst de onderliggende serviceprovider het meest geschikte netwerkadres toe. Dit kan helpen uw toepassing te vereenvoudigen als u meerdere netwerkinterfaces hebt. Als u niet weet welke lokale poort wordt gebruikt, kunt u een IPEndPoint using 0 maken voor het poortnummer. In dit geval wijst de serviceprovider een beschikbaar poortnummer toe tussen 1024 en 5000.

Als u de bovenstaande methode gebruikt, kunt u ontdekken welk lokaal netwerkadres en poortnummer is toegewezen door het aanroepen van de LocalEndPoint. Als u een verbindingsgeoriënteerd protocol gebruikt, LocalEndPoint wordt het lokaal toegewezen netwerkadres pas geretourneerd nadat u een aanroep naar de Connect of EndConnect methode hebt gedaan. Als u een verbindingsloos protocol gebruikt, hebt u geen toegang tot deze informatie totdat u een verzend- of ontvangstbericht hebt voltooid.

Als een UDP-socket interface-informatie wil ontvangen over ontvangen pakketten, moet de SetSocketOption methode expliciet worden aangeroepen met de socketoptie ingesteld PacketInformation op onmiddellijk na het aanroepen van de Bind methode.

Note

Als u multicast-datagrammen wilt ontvangen, moet u de Bind methode aanroepen met een multicastpoortnummer.

Note

U moet de Bind methode aanroepen als u verbindingloze datagrammen wilt ontvangen met behulp van de ReceiveFrom methode.

Note

Als u een SocketException methode ontvangt bij het aanroepen van de Bind methode, gebruikt u de SocketException.ErrorCode eigenschap om de specifieke foutcode op te halen. Nadat u deze code hebt verkregen, raadpleegt u de Windows Sockets versie 2 API-foutcode documentatie voor een gedetailleerde beschrijving van de fout.

Note

Dit lid voert traceringsgegevens uit wanneer u netwerktracering inschakelt in uw toepassing. Zie Network Tracing in .NET Framework voor meer informatie.

Van toepassing op

Zie ook