Socket.Bind(EndPoint) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Asocia un Socket objeto a un punto de conexión local.
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)
Parámetros
Excepciones
localEP es null.
Error al intentar acceder al socket.
Se Socket ha cerrado.
Un autor de llamada superior en la pila de llamadas no tiene permiso para la operación solicitada.
Ejemplos
En el ejemplo de código siguiente se enlaza mediante Socket el punto de conexión local especificado.
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
Comentarios
Use el Bind método si necesita usar un punto de conexión local específico. Debe llamar Bind a para poder llamar al Listen método . No es necesario llamar Bind a antes de usar el Connect método a menos que necesite usar un punto de conexión local específico. Puede usar el Bind método en protocolos sin conexión y orientados a conexiones.
Antes de llamar a Bind, primero debe crear el local IPEndPoint desde el que pretende comunicar los datos. Si no le importa qué dirección local se asigna, puede crear un IPEndPoint uso IPAddress.Any como parámetro address y el proveedor de servicios subyacente asignará la dirección de red más adecuada. Esto puede ayudar a simplificar la aplicación si tiene varias interfaces de red. Si no le importa qué puerto local se usa, puede crear un IPEndPoint mediante 0 para el número de puerto. En este caso, el proveedor de servicios asignará un número de puerto disponible entre 1024 y 5000.
Si usa el enfoque anterior, puede detectar qué dirección de red local y número de puerto se ha asignado llamando a LocalEndPoint. Si usa un protocolo orientado a la conexión, LocalEndPoint no devolverá la dirección de red asignada localmente hasta después de haber realizado una llamada al Connect método o EndConnect . Si usa un protocolo sin conexión, no tendrá acceso a esta información hasta que haya completado un envío o recepción.
Si un socket UDP desea recibir información de interfaz sobre los paquetes recibidos, se debe llamar explícitamente al SetSocketOption método con la opción socket establecida PacketInformation en inmediatamente después de llamar al Bind método .
Nota:
Si piensa recibir datagramas de multidifusión, debe llamar al Bind método con un número de puerto de multidifusión.
Nota:
Debe llamar al Bind método si piensa recibir datagramas sin conexión mediante el ReceiveFrom método .
Nota:
Si recibe un al SocketException llamar al Bind método , use la SocketException.ErrorCode propiedad para obtener el código de error específico. Después de obtener este código, consulte la documentación del código de error de la API de Windows Sockets versión 2 para obtener una descripción detallada del error.
Nota:
Este miembro genera información de seguimiento al habilitar el seguimiento de red en la aplicación. Para obtener más información, consulte Seguimiento de red en .NET Framework.