Conociendo las propiedades, métodos y eventos del Control WinSock podemos pasar a la labor de la programación.
El siguente es un programa Servidor, lo que hace es: designar un puerto, dejarlo a la escucha para aceptar conexiones, si se realiza una petición de conexión aceptarla, y por último enviar datos al Cliente y recibir los datos que éste mande.
Identificación de controles de la aplicación Servidor.- Para poder programar la siguiente aplicación necesitan tener el Control WinSock en el formulario.
Para entender el correcto funcionamiento del protocolo TCP/IP vamos a empezar por programar la aplicación Servidor a la cual luego se conectará el Cliente.
Comenzamos por crear un proyecto nuevo (EXE estándar) para el Servidor, y agregamos la siguiente lista de controles al formulario principal. La ubicación de dichos controles es a gusto del programador, siempre tratando de que el usuario final este a gusto con el producto y que se pueda manejar libremente sin problemas por el entorno del mismo.
-WinSock Control
-2 cajas de texto (TextBox)
-2 botones.
Cambiar propiedades de los controles.- A continuación hace
falta que cambiemos algunas propiedades de los controles, esta es
la lista de controles con las respectivas propiedades a
cambiar.
Control (nombre
predeterminado)
Propiedad (nuevo valor)
WinSock1
LocalPort = 888
Text1
Text =
Text2
Text =
Command1
Caption = "Escuchar"
Command2
Caption = "Enviar"
Para que el ejemplo funcione a la perfección conviene que seguir
la ubicación de los controles como esta indicado en la siguiente
imagen.
Código.- Una vez hecho esto podemos empezar a tipear código. El sangrado del programa es una cuestión de entendimiento para el programador, algunos recurren a éste como otros no, eso también queda a criterio del que programa.
Evento click del Command1
Private Sub Command1_Click()
Winsock1.Listen
End Sub
Esto hace que el Control WinSock empiece a funcionar, escuchando el puerto que se indicó en las propiedades de dicho control. Este puerto es el 888. Ahora si realizamos todo a la perfección el puerto 888 esta siendo vigilado para aceptar conexiones remotas.
Evento DataArrival del WinSock
Private Sub Winsock1_DataArrival(ByVal bytesTotal As
Long)
Dim datos As String
Winsock1.GetData datos
Text1.Text = Text1.Text + datos
End Sub
Datos queda transformada en una variable de cadena, y WinSock almacena los datos que recibe del Cliente en el buffer y luego ingresan a la variable datos, dicha variable mostrará su contenido en el control TextBox (Text1).
Evento ConnectionRequest del Winsock
Private Sub Winsock1_ConnectionRequest(ByVal requestID
As Long)
Winsock1.Close
Winsock1.Accept requestID
End Sub
Este evento es muy importante, permite aceptar la petición de conexión. Sin este evento el resto del programa no tendría efecto.
Evento Click del command2
Private Sub Command2_Click()
Dim enviar As String
enviar = Text2.Text
Winsock1.SendData enviar
End Sub
Esto permite enviar el texto que se introduzca en el TextBox número 2.
Información de los programas con certificado
Hay 162 opiniones. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
Java Java nació con el deseo por parte de Sun de buscar un lenguaje de programación enfocado a electrodomésticos. Se necesitaba alg&uacu... [23/04/04] |
|
57.069 | ||
|
Generadores de código Necesitamos construir proyectos en menor tiempo, con calidad y utilizando metodologias actuales, por eso te proponemos una serie de consejos, normas y cualidades de est... [24/01/06] |
|
2.438 | ||
|
PHP y MySQL. Aplicaciones Web: base de datos MySQL II (octava parte) Programación de aplicaciones Web con PHP y MySQL. Continuando con el estudio de la Base de datos MySQ, aprende sobre el SQL (Lenguaje de consultas estructu... [02/12/08] |
|
1.320 | ||
Publicar en
del.icio.us
digg
meneame