Red de conocimiento de abogados - Derecho de sociedades - VB Winsock es el código fuente del programa de chat más simple;

VB Winsock es el código fuente del programa de chat más simple;

Este es un ejemplo que estudié antes. ¡Espero que esto ayude! ! !

Utilice VB para implementar ejemplos de programación cliente-servidor (TCP/IP)

-

La mayoría de los lenguajes ahora admiten la programación en modo cliente-servidor, entre los que se encuentran VB Nos proporciona un buen método de programación cliente-servidor. A continuación usamos VB para implementar la programación de red TCP/IP.

El protocolo TCP/IP es el protocolo más importante de Internet. VB proporciona control WinSock para la comunicación de red basada en TCP/IP. Cuando dos aplicaciones utilizan Sockets para la comunicación de red, una de ellas debe crear un servidor Socket para escuchar y la otra debe crear un cliente Socket para conectarse al servidor. De esta forma, los dos programas pueden comunicarse.

1. Para crear un servidor, primero cree un número de puerto de servicio. Y comience a escuchar las solicitudes de los clientes para conectarse.

Cree un formulario y agréguele un control Winsock (puede agregar este control en el elemento Componentes del menú Proyecto)

Agregue dos cuadros de texto Texto1, Texto2 y un Botón Command1

Private Sub Form_Load()

SockServer.LocalPort = 2000 ′Número de puerto del servidor, preferiblemente mayor que 1000

SockServer.Listen ′Empezar a escuchar

End Sub

Private Sub Form_Unload(Cancelar como entero)

SockServer.Close

End Sub

Private Sub SockServer_Close ()

SockServer.Close

End Sub

Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)

SockServer.Close

SockServer.Accept requestID ′ Indica el número de ID del cliente que solicita una conexión

End Sub

′ Cuando llegan los datos enviados por el cliente al servidor se envía un DataArrival Se genera el evento. En el evento Recibir datos en el método GetData.

Private Sub SockServer_Data

Llegada(ByVal bytesTotal As Long)

Dim s As String

SockServer.GetData s

Text1.Text = s

End Sub

Cuando necesito enviar datos al cliente, simplemente llamo al método SendData.

Private Sub Command1_Click()

SockServer .SendData Text2.Text

text1.text = text2.text

text2.text = ""

Fin del subtítulo

2. Crea un cliente.

Para crear una conexión de cliente a un servidor, primero configure el nombre de host del servidor, como la dirección IP, el nombre de dominio o el nombre de la computadora, luego configure el puerto del servidor y finalmente conéctese al servidor.

Cree un formulario y agréguele un control Winsock (puede agregar este control en el elemento Componentes del menú Proyecto) y asígnele el nombre: SockC1. Agregue dos cuadros de texto Texto1, Texto2 y un botón Comando1

Private Sub Form_Load()

dim my as string

my = SockCl.RemoteHostIP

SockCl.RemoteHost = my

′ representa el nombre del host del servidor

SockCl.RemotePort = 2000

′ representa el nombre del puerto del servidor

SockCl.Connect

′Conectar al servidor

End Sub

Private Sub Form_Unload(Cancelar como entero)

SockCl.Close

End Sub

Private Sub SockCl_Close()

SockCl.Close

End Sub

Private Sub SockCl_DataArrival (ByVal bytesTotal As Long)

Dim s As String

SockCl.GetData s ′Recibir datos en el cuadro de texto

Text1.Text = s

End Sub

Private Sub Command1_Click()

SockCl.SendData Text2.Text ′Enviar datos al servidor

text1.text = text2.text

text2.text = ""

Fin Sub

3. comunicar. Compile estos dos formularios en dos archivos EXE, programas Server.exe y Client.exe respectivamente, e instálelos en el servidor y el cliente respectivamente, para que se pueda lograr la comunicación entre los dos.

----------------------------------------El código compilado es el siguiente-- --------------------------

Private Sub Form_Load()

Atenuar mi cadena As

my = SockCl.RemoteHostIP

SockCl.RemoteHost = my

SockCl.RemotePort = 2000

SockCl.Connect

End Sub

Private Sub Form_Unload(Cancelar como entero)

SockCl.Close

End Sub

Private Sub SockCl_Close()

SockCl.Close

End Sub

Private Sub SockCl_DataArrival(ByVal bytesTotal As Long)

Dim s As String

SockCl.GetData s

Text1.Text = s

End Sub

Private Sub Command1_Click()

SockCl.SendData Texto2.Text

Texto1.Text = Texto2.Text

Texto2.Text = ""

Fin Sub

Private Sub Form_Load()

SockServer.LocalPort = 2000

SockServer.Listen

End Sub

Private Sub Form_Unload(Cancelar como Entero)

SockServer.Close

End Sub

Private Sub SockServer_Close()

SockServer.Close

End Sub

Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)

SockServer.Close

SockServer.Accept requestID

End Sub

Private Sub Command1_Click()

SockServer.SendData Text2.Text

Text1.Text = Text2.Text

Text2.Text = ""

Fin del subtítulo

Private Sub SockServer_DataArrival(ByVal bytesTotal As Long)

Dim s As String

SockServer.GetData s

Text1.Text = s

Fin Sub