Sockets

Hola, yo nuevamente.
Estoy trabajando con TServersocket y 3 Tclientsocket.
¿Cómo saber cual de los 3 sockets transmitió, para luego el Server enviar una respuesta?
¿Existe alguna función que retorne el enlace por cual entro la comunicación?
Pienso hacer algo así :
x= funcion que retorne el enlace.
serversocket->socket->comunications[ x ]->SendText("mensaje");
Ojala puedas ayudarme.
Antes que olvide esto es en C++ Builder 5.0
Chao, gracias.
1

1 respuesta

Respuesta
1
Así es. Existe un arreglo llamado Connections que forma parte de Socket donde se lleva el registro de todos aquellos clientes que están conectados al servidor
ServerSocket1->Socket->Connections[0]
ServerSocket1->Socket->Connections[1]
Etc...
¿Cuántos conexiones tienes? Las que ActiveConnections te indica.
A lo máximo 3 sockets.
¿No me queda claro si ActiveConnections me retorna el total de sockets activos o el ultimo que transmitió?
Supongamos que los 3 sockets están activos, ¿cómo sé en un determinado momento cual de ellos hizo una transmisión para así el server mandarle una respuesta a ese socket en particular?
ActiveConnections es una propiedad que representa el número de conexiones activas.
Ahora bien, para enviar texto a un cliente, escribe código para el evento OnClientWrite de ServerSocket1. En este eventoun Socket es pasado como parámetro. Éste es el socket del cliente al que enviarás respuesta, y podría ser así:
Socket->SendText("OK\n");

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas