Je souhaite envoyer un message à plusieurs ordinateurs (réseau LAN).Connexion multiple Socket VB.NET
Chaque ordinateur en laboratoire exécute le serveur sauf un ordinateur qui est le client.
problème: une fois un message a été envoyé à premier ordinateur, le client cesse d'envoyer à d'autres ordinateurs.
client:
Dim ip As String
Dim i As Integer
Dim serverStream As NetworkStream
Dim outStream As Byte()
Dim counter As Integer = 0
For i = 0 To 100
Try
ip = txtRange.Text & i
clientSocket.Connect(ip, 8888)
If clientSocket.Connected = True Then
serverStream = clientSocket.GetStream()
outStream = System.Text.Encoding.ASCII.GetBytes("Message from the client$")
serverStream.Write(outStream, 0, outStream.Length)
serverStream.Flush()
End If
Catch ex As Exception
End Try
Next
serveur:
Dim serverSocket As New TcpListener(8888)
Dim requestCount As Integer
Dim clientSocket As TcpClient
serverSocket.Start()
clientSocket = serverSocket.AcceptTcpClient()
While (true)
Dim networkStream As NetworkStream = clientSocket.GetStream()
Dim bytesFrom(10024) As Byte
networkStream.Read(bytesFrom, 0, CInt(clientSocket.ReceiveBufferSize))
Dim dataFromClient As String = System.Text.Encoding.ASCII.GetString(bytesFrom)
dataFromClient = dataFromClient.Substring(0, dataFromClient.IndexOf("$"))
MessageBox.Show("Data from client - " + dataFromClient)
End While
clientSocket.Close()
serverSocket.Stop()
merci.