Comment tester mon programmes sockets sur ma machine
Bonjour
j'ai trouvé un programme d'une communication client serveur sur un site mais je n'arrive pas a executé le programme serveur et client en meme temps sur ma machine je vous pris de m'aider.
voici les programmes
Serveur
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| Imports System.Net.Sockets
Imports System.Net
Module Module1
Dim port As String = "8080"
Dim ip As String = "127.0.0.1"
Sub Main()
Dim MonSocketServeur As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
Dim MonEP As IPEndPoint = New IPEndPoint(IPAddress.Parse(ip), port)
MonSocketServeur.Bind(MonEP) 'Lie le socket à cette IP
MonSocketServeur.Listen(1) 'Se met en mode écoute
Console.WriteLine("Socket serveur initialisé.")
While True 'Boucle à l'infini
Console.WriteLine("En attente d'un client.")
'Se met en attente de connexion et appelle TraitementConnexion() lors d'une connexion.
Dim SocketEnvoi As Socket = MonSocketServeur.Accept() 'Bloquant tant que pas de connexion
TraitementConnexion(SocketEnvoi)
End While
End Sub
Sub TraitementConnexion(ByVal SocketEnvoi As Socket)
Console.WriteLine("Socket client connecté, envoi de l'heure.")
Try
Dim Heure As Byte() = System.Text.Encoding.ASCII.GetBytes(Now.ToLongTimeString) 'Convertit l'heure en bytes
Dim Envoi As Integer = SocketEnvoi.Send(Heure) 'Envoie l'heure au client
Console.WriteLine(Envoi & " bytes envoyés au client")
Catch ex As Exception
Console.WriteLine("Erreur lors de l'envoi du message au socket. " & ex.ToString)
End Try
End Sub
End Module |
Client :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Imports System.Net.Sockets
Imports System.Net
Module Module1
Dim port As String = "8080"
Dim ip As String = "127.0.0.1"
Sub Main()
Dim MonSocketClient As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
Dim MonEP As IPEndPoint = New IPEndPoint(IPAddress.Parse(ip), port)
Console.WriteLine("Socket client initialisé.")
Try
Console.WriteLine("Connexion au serveur ...")
MonSocketClient.Connect(MonEP)
TraitementConnexion(MonSocketClient)
Catch ex As Exception
Console.WriteLine("Erreur lors de la tentative de connexion : " & ex.ToString)
End Try
Console.ReadLine()
End Sub
Sub TraitementConnexion(ByVal SocketReception As Socket)
Console.Write("Connecté, réception de l'heure : ")
Dim Heure(255) As Byte 'Création du tableau de réception
Try
SocketReception.Receive(Heure) 'Réception
Console.WriteLine(System.Text.Encoding.ASCII.GetString(Heure)) 'Affichage
Catch ex As Exception
Console.WriteLine("Erreur lors de la réception des données : " & ex.ToString)
End Try
End Sub
End Module |
Merci