Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Problema con WINSOCKS (envio/recepción de datos)

Estas en el tema de Problema con WINSOCKS (envio/recepción de datos) en el foro de Visual Basic clásico en Foros del Web. Hola a todos. Tengo el siguiente problema. Resulta que tengo un cliente-servidor, en el cual el cliente le envia al servidor un login y un ...
  #1 (permalink)  
Antiguo 23/09/2005, 04:52
 
Fecha de Ingreso: abril-2005
Mensajes: 17
Antigüedad: 19 años
Puntos: 0
Problema con WINSOCKS (envio/recepción de datos)

Hola a todos.
Tengo el siguiente problema. Resulta que tengo un cliente-servidor, en el cual el cliente le envia al servidor un login y un password, y el servidor comprueba en su base de datos si está o no ese usuario. Si lo está le envia primero con un SENDATA el código de ese usuario con una cadena de la forma "#codigo#3" por ejemplo, y seguidamente le envía con otro SENDATA otra cadena de la forma "#sql#SELECT * FROM....". De este modo, primero el cliente detecta con la palabra "codigo" que se le envia su numero identificativo, y luego con la palabra "sql" detecta que el servidor le envia una consulta.
Mi problema es que, al enviar el servidor dos veces seguidas el SENDDATA, el cliente no trata como diferente las dos cadenas, sino que las solapa/concatena tomandola como una sola, interpretandola de la siguiente forma: "#codigo#3#sql#SELECT...."

La idea es que siempre reciba cadenas en dos partes (#palabra_clave#informacion_segun_palabra_clave#) para así poder extraer la información de cada envio de datos. ¿¿Alguien me puede ayudar en como separar esos dos envios del servidor para que el cliente no los concatene??

Espero haberme explicado bien ;)

Gracias de antemano.
  #2 (permalink)  
Antiguo 23/09/2005, 11:12
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo

Puedes hacer un bucle con DoEvents para no colgar cuando envias el primer dato y en el evento SendComplete colocar en una variable que ya fue enviado el primer dato, después del bucle envias el segundo dato y para no crear problemas mejor también le haces otro bucle....
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 23/09/2005, 11:36
 
Fecha de Ingreso: septiembre-2005
Mensajes: 4
Antigüedad: 18 años, 7 meses
Puntos: 0
Tengo el mismo problema que el jeje pero con un registro de datos esta aquí en otro post, pero bueno digo aquí esto: ¿Como se hace ese bucle con el DoEvents? (sorry mi ignorancia), y al recibir el otro dato no sustituira el que ya estaba en una variable?

Graxas
  #4 (permalink)  
Antiguo 23/09/2005, 11:41
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo

Cita:
Iniciado por Newcastle
Tengo el mismo problema que el jeje pero con un registro de datos esta aquí en otro post, pero bueno digo aquí esto: ¿Como se hace ese bucle con el DoEvents? (sorry mi ignorancia), y al recibir el otro dato no sustituira el que ya estaba en una variable?

Graxas
Código:
 Private FinishTransfer As Boolean 
Sub Enviar()
FinishTransfer = False
Winsock.SendData "Dato1 a Enviar"
Do
	 DoEvents
While Not FinishTransfer
FinishTransfer = False
Winsock.SendData "Dato2 a Enviar"
Do
	 DoEvents
While Not FinishTransfer
End Sub
Private Sub Winsock_SendComplete()
FinishTransfer = True
End Sub
Nos vemos.....
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:01.