Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Distorsion en 14 Marzo 2008, 16:12 pm



Título: Winsock operacion send seguida de connect.
Publicado por: Distorsion en 14 Marzo 2008, 16:12 pm
Hasta ahora lo que  he programado no a necesitado instrucciones de envio de datos inmediatamente despues de conectar pero ahora me encuentro en un caso que si lo necesita y no se como solucionarlo, el codigo:
Código:
ws.connect
ws.senddata "lo_que_sea"

Da error porque dice que el estado de la conexion es erroneo, he provado a poner un sleep para dar tiempo a la conexion pero peta igual.
A alguien se le ocurre una solucion?¿
Saludos.


Título: Re: Winsock operacion send seguida de connect.
Publicado por: Lambda en 14 Marzo 2008, 16:21 pm
Hasta ahora lo que  he programado no a necesitado instrucciones de envio de datos inmediatamente despues de conectar pero ahora me encuentro en un caso que si lo necesita y no se como solucionarlo, el codigo:
Código:
ws.connect
ws.senddata "lo_que_sea"

Da error porque dice que el estado de la conexion es erroneo, he provado a poner un sleep para dar tiempo a la conexion pero peta igual.
A alguien se le ocurre una solucion?¿
Saludos.



WS.Connect
Do Until WS.State = 7
WS.SendData "..."

Prueba asi, creo recordar que 7 es el estado de conectado


Título: Re: Winsock operacion send seguida de connect.
Publicado por: Distorsion en 14 Marzo 2008, 16:26 pm
Tampoco funca, haciendo que llame a una funcion y que esta sea la que lo envie tampoco, activando un timer y que este realice la funcion y luego se desactive as i mismo  si que funciona, pero es un poco xapucero, algo elegante deja mejor sabor de boca.
Gracias por la intencion.


Título: Re: Winsock operacion send seguida de connect.
Publicado por: cassiani en 14 Marzo 2008, 17:09 pm
Citar
A alguien se le ocurre una solucion?¿

Pero se te olvido tomar en cuenta los eventos!!!

Cuando la conexión se efectua se produce un evento denominado: Connect y es hay donde deberias colocar la siguiente instrucción ¡prueba a ver!

Código
  1. Private Sub Winsock1_Connect()
  2. 'Este evento Ocurre cuando hemos establecido con éxito la conexión al servidor
  3.    Winsock1.SendData "lo_que_sea"
  4. End Sub

Cuando la conexión se establece se envia la cadena.

¡S4lu2!


Título: Re: Winsock operacion send seguida de connect.
Publicado por: Distorsion en 14 Marzo 2008, 22:09 pm
Gracias por la ayuda, pensava que la funcion connect era blokeante y al pasar a la siguiente instruccion ya estaba conectado. :P