Tengo unas dudas respecto a la multiconexión con winsock, estoy empezando a usarlo,
ya he creado chats etc, pero que pasa.. que al solo usar un winsock , solo me puedo
conectar 1 server 1 cliente. Entonces estoy buscando información a serca de la multiconexión
y he bajado varios sources, leído etc.

Pretendía que aquí me dieran una visión más sencilla de como hacer multiconexión con los dos
winsocks en el cliente etc... y que me, explicaran un poco.


Saludos
Imagen

http://img844.imageshack.us/img844/8088/mujerrara.jpg
http://img715.imageshack.us/img715/5813/tigree.png
http://img830.imageshack.us/img830/6484/camaleon.png

http://img839.imageshack.us/img839/4944/tigrev2.jpg
http://img843.imageshack.us/img843/443/spidermanxn.png

http://www.youtube.com/watch?v=wHYYkciIKE0
Vale pues es simple te explico más o menos la teoría.

Primeramente añades un Winsock con el index 0, esto se debe a que cada ves que un servidor te pida conectarse lo que vas a hacer es crear un nuevo Socket solo para el.

En el form general en la parte de arriba declaras una variable de tipo Long que es la que va a contener la cantidad de conexiones que el servidor acepte.

En el evento Connexion_Request le pones lo siguiente..

Lavariablequedeclaraste = Lavariablequedeclaraste + 1 ' // Esto lo que hace es sumar al index una conexión

Load Winsock(Lavariablequedeclaraste) ¡ ' // Cargamos un nuevo Socket con el index de Lavariablequedeclaraste

Winsock.accept requestid ' // Aceptas la conexión

Eso es todo , luego para enviar datos a un cliente en expecifico le dice Winsock(elindex).sendata "Los datos"

eso es todo Saludos.
Imagen
Lo que menciona skyweb07 es correcto, lo que haces es hacer un array e ir almacenando todos los servidores dentro de ese array, y puedes llamarlos por los subindices...
WS(0) 'servidor1
WS(1) 'servidor 2
'...etcétera

puedes enviar datos a todos los servidores, o de un numero a otro usando bucles también, por eso los arrays son tan útiles.
Un saludo hermano
//mHmm..
Vale vale , más o menos lo entendí.. ahora pruebo a ver , y si tengo más dudas
pregunto, con esta explicación es más facil la verdad..

Gracias, a los dos.
Imagen

http://img844.imageshack.us/img844/8088/mujerrara.jpg
http://img715.imageshack.us/img715/5813/tigree.png
http://img830.imageshack.us/img830/6484/camaleon.png

http://img839.imageshack.us/img839/4944/tigrev2.jpg
http://img843.imageshack.us/img843/443/spidermanxn.png

http://www.youtube.com/watch?v=wHYYkciIKE0
El ejemplo que te da skyweb al tener muchas conexiones vas limitando la longitud del array, es de tipo long (no recuerdo a cuanto equivale), y llegara el momento en que te tire error..., para esto debes de hacer una funcion que recorra todos los sockets creados y comprobar si estan desconectados, si es asi pues lo usas para aceptar la peticion si no creas uno nuevo y tomas ese para aceptar la peticion, espero que me hayas entendido XD, salu2
Responder

Volver a “Otros lenguajes”