Winsock Ayuda plz!

Iniciado por n3ts4mura1, 26 Julio 2006, 07:11 AM

0 Miembros y 1 Visitante están viendo este tema.

n3ts4mura1

#esto es todo mi codigo del cliente


Private Sub Command1_Click()
On Error Resume Next
Winsock1.RemoteHost = Text3.Text
Winsock1.Connect
End Sub
Private Sub Command2_Click()
Dim enviar As String
   enviar = Text2.Text
   Winsock1.SendData enviar
   Text1.Text = ""
   Text2.Text = ""
End Sub
Private Sub Command3_Click()
Winsock1.Close
End


End Sub

Private Sub Label4_Click()

End Sub

Private Sub Timer1_Timer()
If Winsock1.State = winsock1Closed Then
            Label4.Caption = "-Desconectado-"

End If
If Winsock1.State = winsock1Connected Then
            Label4.Caption = "-Conectado-"
End If
End If
If Winsock1.State = winsock1Connecting Then
      Label4.Caption = "-Conectando-"
End If

End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim datos As String
   Text1.Text = ""
   Winsock1.GetData datos
   Text1.Text = Text1.Text + datos
End Sub

#pero la parte del Timer me pasa lo que te dije(#el problema es que siempre queda en conectando.)no cambia a conectado ni a desconectado Bueno agradeceria la ayuda

elmaro

si no lo as probado trata de cerrar el servidor aver si en el cliente te aparece desonectado
yo creo que el caption de "Conectando" no lo vas a ver xq se concta muy rapido,.(x experiencia) a no ser que este intentando conecta a "algo" que no se pueda conectar,. ya sea xq no tenga el peurto especificado abierto o xq lo tenga cerrado,. pero no te agas problema x el "conectando" fijate mas en el "desconectado"
trata de cerrar el servidor y fiajte




El MaRo!

n3ts4mura1

Pero supuestamente deberia quedar el coenctado todo el rato si cumple la condicion.me podrias explicar mejor,o que tengo mal yo.plz

elmaro

si...
no se lo que pasa con ese codigo ,. loa probe y no se que seyo
te paso mi metodo,. como lo uso yo

esto es simple,... en el boton de conectar le agregas este codigo para que te muestre si esta conectando

If ws.State = 6 Then
label_status.Caption = "Conectando..."

End If


lugo pones esto.. cuadno el winsock coanecta se adispara este evento,. le agregas que te avisea en un label

Private Sub ws_Connect()
label_status.Caption = "******* Conexion Establecida *******"
End Sub


para que te avise cuadno esta desconectado si TU mismo lo desconectas con el boton que utilizas para desconectar...pon esto en el boton para desconectar

Private Sub cmd_desconectar_Click() 'commandbuttom que desconecta
ws.Close
label_status = "******* Conexion Cerrada *******"
End Sub


ahora si kieres que te avise cuando se desconecta xq el servidor se cerro x algun problema o xq lo cerro el usuario de la pc remota,utiliza el evento winsock_close() que te se dispara cuando la conexión se pierde

Private Sub ws_Close()
ws.Close 'tambien cierra tu socket para que no te de error y se te congele la aplicacion en modo de diseño

label_status = "******* Conexion Perdida *******"
End Sub


esto no se si lo autilizaras pero lo pongo igua,. se dispara cauando se produce algun error

Private Sub ws_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)

MsgBox "Se ha producido el siguiente error numero " & Number & Description, vbCritical

End Sub



espero que te aya servido lo que te puse,. si no entiendes algo(lo dudo,. xq esta clarito :P) me preguntas y te contesto
suerte man






El MaRo!