Aplicacion Servidor WinSock de Visual Basic.
Visual Basic 10 abril 2008
Si quieres comprobar que realmente tu aplicacion de Windows Sockets está funcionando necesitas el servidor para poder ver los mensajes.
Por supuesto has de ejecutarlo en otro pc y escoger un puerto que no esté siendo utilizado por windows, algo como 20145 o similar. Es importante que en el equipo que lo pongas abras ese puerto en el firewall o lo deshabilites momentaneamente durante las pruebas, de otra forma no te funcionará.
Para usarlo debes poner el puerto y pulsar "Escuchar".
Formato del formulario:
Los nombres de los controles son:
- Command1 --> Botón enviar.
- Command2 --> Botón escuchar.
- Command3 --> Botón desconectar.
- Text1 --> Ventana de datos recibidos y enviados.
- Text2 --> Caja de texto para el mensaje a enviar.
- Text3 --> Caja de texto para el puerto que utilizaremos.
- Winsock1 --> control “Microsoft Winsock Control”.
Código para la aplicación:
-
Private Sub Command1_Click()
-
'enviamos el contenido de Text2
-
Winsock1.SendData Text2.Text & vbCrLf
-
-
'apuntamos al final del contenido del TextBox e
-
'insertamos los nuevos datos obtenidos
-
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
-
Text1.Text = Text1.Text & "Servidor>" & Text2.Text & vbCrLf 'mostramos los datos
-
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
-
-
'borramos Text2
-
Text2.Text = ""
-
End Sub
-
-
Private Sub Command2_Click()
-
'cerramos cualquier conexion previa
-
Winsock1.Close
-
-
'asignamos el puerto local que abriremos
-
Winsock1.LocalPort = Text3.Text
-
-
'deja el socket esuchando conexiones
-
Winsock1.Listen
-
-
'desplegamos un mensaje en la ventana
-
Text1.SelStart = Len(Text1.Text)
-
Text1.Text = Text1.Text & "*** Esuchando conexiones." & vbCrLf
-
Text1.SelStart = Len(Text1.Text)
-
End Sub
-
-
Private Sub Command3_Click()
-
'cierra la conexion
-
Winsock1.Close
-
-
'desplegamos un mensaje en la ventana
-
Text1.SelStart = Len(Text1.Text)
-
Text1.Text = Text1.Text & "*** Conexion cerrada por el usuario." & vbCrLf
-
Text1.SelStart = Len(Text1.Text)
-
End Sub
-
-
Private Sub Winsock1_Close()
-
'cierra la conexion
-
Winsock1.Close
-
-
'desplegamos un mensaje en la ventana
-
Text1.SelStart = Len(Text1.Text)
-
Text1.Text = Text1.Text & "*** Conexion cerrada por el Cliente." & vbCrLf
-
Text1.SelStart = Len(Text1.Text)
-
End Sub
-
-
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
-
'mostramos un mensaje en la ventana
-
Text1.SelStart = Len(Text1.Text)
-
Text1.Text = Text1.Text & "*** Peticion numero " & requestID & vbCrLf
-
Text1.SelStart = Len(Text1.Text)
-
-
'cerramos previamente el socket
-
Winsock1.Close
-
-
'aceptamos la conexion
-
Winsock1.Accept requestID
-
-
'desplegamos un mensaje en la ventana
-
Text1.SelStart = Len(Text1.Text)
-
Text1.Text = Text1.Text & "*** Conexion aceptada, listo para interactuar." & vbCrLf
-
Text1.SelStart = Len(Text1.Text)
-
End Sub
-
-
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
-
Dim Buffer As String 'variable para guardar los datos
-
-
'obtenemos los datos y los guardamos en una variable
-
Winsock1.GetData Buffer
-
-
'apuntamos al final del contenido del TextBox e
-
'insertamos los nuevos datos obtenidos
-
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
-
Text1.Text = Text1.Text & "Cliente>" & Buffer 'mostramos los datos
-
Text1.SelStart = Len(Text1.Text) 'coloca el cursor al final del contenido
-
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)
-
'cerramos la conexion
-
Winsock1.Close
-
-
'mostramos informacion sobre el error
-
MsgBox "Error numero " & Number & ": " & Description, vbCritical
-
End Sub
Aqui teneis la aplicacion de cliente para conectarte al servidor.
Vota este artículo:
Posts anterior y posterior:
Posts Relacionados:
- Previo: « Aplicacion Cliente WinSock de Visual Basic.
- Siguiente: Reduce de tamaño tus jpg con Visual Basic. »


julio 10th, 2008 a las 8:35 pm
Solo saves copiar codigos de otras webs? que triste no seas tan n00b.
junio 24th, 2009 a las 8:21 pm
Hola soy de argentina, rpogramador en vb6 y necesito colocar un sistema ejecuntandolo desde un sitio web. Aparentemente funciona, el problema es a la hora de leer archivos. El sistema tiene archivos random. Como se direccionan. Grcaias.
julio 10th, 2009 a las 4:14 am
Hola
alguien sabe, como utilizar el winsock en vb6, pero para que me tire la pantalla de otra pc en mi ordenador que esten en red..
manejar desde una compu la otra