Chat Mono usuario  
     
Menú
Home
Articulos
Servicios de Internet
Enlaces
 
 
Introducción:

     La transmision se realiza mediante el control winsock que viene con el lenguaje de desarrollo que viene con Visual Basic 6.0, este control realiza la conexion a otro control haciendo uso de las funciones de winsocket que maneja el windows.

     Este control puede tener grandes utilidades dentro del campo de transmisión y recepcion de datos a estaciones remotas, tales como son:

  • Envio de Archivos
  • Aplicaciones
  • Voz
  • Video

Desarrollo:

      Primero se creara un servidor que sera el que se encargara de estar escuchando un puerto para que cuando se quiera conectar un cliente responderle y crear una conexion entre ellos.

Servidor:

      Primero creamos un nuevo proyecto en el IDE de Visual Basic cambiamos las propiedades que quieramos modificar como caption de la forma, el nombre de la forma el ancho y alto de la misma a manera que se vaya creando el diseño que desemos darle a nuestra aplicacion.

Ensegida situamos un control winsock, en la forma y cambimos el nombre, en este caso se usará Server.

Agregamos 2 TextBox a nuestra forma una que sera en la que van a ir aparenciendo los mensages que vayamos recibiendo y otra sera en la que escribiriremos nuestros mensages que se desean enviar.

Agregamos un boton que sera usado cuando se desee enviar el mensage.

En la programacion del servidor se realizara lo siguiente:

En el form load vamos a asignar el codigo donde configuramos a nuestro server y ponemos a escuchar.

Private Sub form_load()
  Server.LocalPort = 1000
  Server.Listen
end sub

Cuando se quiere Aceptar una conexinon se ejecuta el evento conecction request y lleva como parametro el No. de Identificador de conexión.

Private Sub Server_ConnectionRequest(ByVal requestID As Long)
  If tcpServer.State <> sckClosed Then _ ' Verifico que el socket no este cerrado
    Server.Close
    Server.Accept requestID
End Sub

Para el envio de los mensages se usa la funcion senddata, que se encarga de enviar el texto que se le pasa como parametro.

Sub Command1_Click()
  Server.SendData Text2.Text
End Sub

Y cuando se desea recibir mensages se debe leer de el evento data arrival del control.

Private Sub Server_DataArrival()
Dim Cadena as String
  Server.GetData(Cadena)
  Text1.Text = Tex2.Text & Cadena
End Sub

Desarrollo del cliente:

     Primero se crea un nuevo proyecto en el IDE de Visual Basic se asignan las propiedades de la forma que se quieran modificar.

     Se agrega un control winsock a la forma se le asigna un nombre en este caso usaremos Cliente.

     Se agregan 2 TextBox a la forma 2 botones de comando.

En la programacion del cliente se realiza lo siguiente.

En el evento Form1_Load se inserta el codigo siguiente

Private Sub Form1_load()
  Cliente.RemoteHost = "Direccion remota del servidor"
  Cliente.RemoteHost = 1000
End Sub

Dentro del boton que se usara para conectarse se le agrega el siguiente codigo

Private Sub Command1_Click
  Cliente.Conect
End Sub

A la hora de enviar datos se realiza lo siguiente

Sub Command2_Click()
  Cliente.SendData Text2.Text
End Sub

La recepcion de los datos se realiza de la misma manera que en el servidor

Private Sub tcpClient_DataArrival(ByVal bytesTotal As Long)
Dim Cadena As String
  Cliente.GetData Cadena
  Text1.Text = Text1.Text & Cadena
End Sub


Conclusiones
En esta se puede ver como se realiza una conexion atravez de intrernet donde se pueden enviar los mensages sin la nesecidad de programar todo lo que implica el desrrollo de los sockets.