Conexion entre 2 programas.

Iniciado por & eDu &, 20 Septiembre 2008, 21:13 PM

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

& eDu &

Bueno, quiero programar un cliente y un servidor, con un winsock en cada programa y cuando inicie el servidor envie "hola" al cliente, todo en un mismo PC es decir los 2 programas tienen que estar en un mismo PC.

1- Es decir el cliente esta conectado y cuando el servidor se abra le envie la palabra "hola" al cliente y que el cliente lo escriba en un text.


Gracias.

aaronduran2

Si quieres el código hecho estás apañado. Para conectar con tu PC, utiliza 127.0.0.1 o localhost. Busca manuales de conexiones cliente/servidor.

Saludos.

& eDu &

Pero lo que no se es como para enviar y recibir datos.

aaronduran2

Pues utilizas Winsock1.SendData "Hola" y para recibir:

Código (vb) [Seleccionar]
Private Sub Winsock1_DataArrival()
    Dim Datos As String
    Winsock1.GetData Datos
    MsgBox Datos
End Sub


Saludos.

& eDu &

Tengo esto y me da error:

Cliente:

Código (vb) [Seleccionar]
Private Sub Command2_Click()
CD.ShowOpen
CD.Filter = "Solo |.exe *.exe"
WS.Close
WS.RemoteHost = "127.0.0.1"
WS.RemotePort = "1234"
WS.Connect
MsgBox ("Enviar")
Dim datitos As String
datitos = Text1.Text
WS.SendData datitos
End Sub

Private Sub WS_Connect()
Label1.Caption = "Conexion establecida"
End Sub

Private Sub WS_DataArrival(ByVal bytesTotal As Long)
Dim dat As String
   
    WS.GetData dat, vbString
   
End Sub

Servidor

Código (vb) [Seleccionar]
Private Sub Form_Load()
WS.Close
WS.LocalPort = "1234"
WS.Listen
End Sub

Private Sub WS_ConnectionRequest(ByVal requestID As Long)
  If WS.State <> sckClosed Then
        WS.Close ' close
    End If

    WS.Accept requestID
End Sub

Private Sub WS_DataArrival(ByVal bytesTotal As Long)
Dim dat As String

    WS.GetData dat
    Text1.Text = dat
End Sub


Si en el cliente quito lo de sendata no me da error. :S

WestOn

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            

& eDu &