Buenas veran tengo un problema con un chat de una sola conexion en visual basic 6.0, siempre me dice tiempo de conexion agotado cuando intento probarlo con otras personas :C . Si me pueden ayudar se los agradeceria para ver a que se debe o que pasa alli.
CODIGO CLIENTE:
Private Sub bntConnect_Click()
On Error GoTo ErrSub
With Winsock1
.Close
.RemoteHost = txtIP
.RemotePort = txtPort
.Connect
End With
Exit Sub
ErrSub:
MsgBox "Error : " & Err.Description, vbCritical
End Sub
Private Sub bntSend_Click()
On Error GoTo ErrSub
Winsock1.SendData txtSend
txtLog = txtLog & "Cliente : " & txtSend & vbCrLf
txtSend = ""
Exit Sub
ErrSub:
MsgBox "Error : " & Err.Description
Winsock1_Close ' cierra la conexión
End Sub
Private Sub Winsock1_Close()
Winsock1.Close 'Cierra la conexión
txtLog = txtLog & "*** Desconectado" & vbCrLf
End Sub
Private Sub Winsock1_Connect()
txtLog = "Conectado a " & Winsock1.RemoteHostIP & vbCrLf
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim dat As String
Winsock1.GetData dat, vbString
txtLog = txtLog & "Servidor : " & dat & vbCrLf
End Sub
Private Sub Winsock1_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)
txtLog = txtLog & "*** Error : " & Description & vbCrLf
Winsock1_Close
End Sub
CODIGO SERVIDOR
On Error GoTo errorSub
With Winsock1
.Close
.LocalPort = txtPort
.Listen
End With
Exit Sub
errorSub:
MsgBox "Error : " & Err.Description, vbCritical
End Sub
Private Sub bntSend_Click()
On Error GoTo errorSub
Winsock1.SendData txtSend
txtLog = txtLog & "Servidor : " & txtSend & vbCrLf
txtSend = ""
Exit Sub
errorSub:
MsgBox "Error : " & Err.Description
' cierra la conexión
Winsock1_Close
End Sub
Private Sub Winsock1_Close()
' Finaliza la conexión
Winsock1.Close
txtLog = txtLog & "*** Desconectado" & vbCrLf
End Sub
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Winsock1.State <> sckClosed Then
Winsock1.Close ' close
End If
Winsock1.Accept requestID
txtLog = "Cliente conectado. IP : " & _
Winsock1.RemoteHostIP & vbCrLf
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim dat As String
Winsock1.GetData dat, vbString
txtLog = txtLog & "Cliente : " & dat & vbCrLf
End Sub
' cuando se produce un error lo envía
''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub Winsock1_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)
txtLog = txtLog & "*** Error : " & Description & vbCrLf
Winsock1_Close
End Sub
Buenas noches, primero lo básico:
Tu chat está agregado al firewall de las pc's que intentas ejecutarlo?
cuando mandas conncet no debes especificar los datos?
Yo me acuerdo que conectaba un cliente pero tenia que hacerle
socket1.connect "url", numeroPuerto
yo veo que lo especificas antes pero no se si asi se conecta igual.
Pa mi que algo te ta faltando
aca no tengo visual para probar perdon
tal vez una estupidez lo q digo solo quiero ayudar, saludos!!
Bueno creo que lo de los firewall ya estaba solucionado, le preguntare a la persona con la que me intento conectar, tomare la idea de declarar antes haber que tal. Trabajare en el codigo y luego posteo mis avances si me funciono o no. Gracias a los 2 ;D
Pude probar el codigo pero hice la conexion conmigo mismo y tuve exito, a mi entender el codigo funciona bien probado y todo, tiene errores al primer mensaje cuando envia pero es un detalle minimo!
Hacia tiempo no metia mano en Visual 6 xD si precisas una mano avisa, pero cheka eso que decis, podriamos decir ahora que el problema no esta en el source.
Saluuud!