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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| Imports System
Imports System.Net.Sockets
Imports System.Net
Imports System.IO
Namespace MiniChatServer
Class Class1
<STAThread()> _
Shared Sub Main(ByVal args As String())
Try
Dim bStatus As Boolean = True
Dim sMessageServer As String = ""
Dim sMessageClient As String = ""
Dim sRemoteAddress As String
Dim address As IPAddress = IPAddress.Parse("127.0.0.1")
Dim tcplistener As TcpListener = New TcpListener(address, 8100)
tcplistener.Start()
Console.WriteLine("Serveur démarré...")
Dim SocketpourClient As Socket = tcplistener.AcceptSocket
sRemoteAddress = CType(SocketpourClient.RemoteEndPoint, IPEndPoint).Address.ToString
Console.WriteLine("Un client vient de se connecter." & Microsoft.VisualBasic.Chr(10) & "IP du client : " & sRemoteAddress & "" & Microsoft.VisualBasic.Chr(10) & "")
Dim FluxReseau As NetworkStream = New NetworkStream(SocketpourClient)
Dim sr As StreamReader = New StreamReader(FluxReseau)
Dim sw As StreamWriter = New StreamWriter(FluxReseau)
While bStatus
If SocketpourClient.Connected Then
sMessageServer = sr.ReadLine
Console.WriteLine("Client : " + sMessageServer)
If sMessageServer = "bye" Then
bStatus = False
sr.Close()
sw.Close()
FluxReseau.Close()
SocketpourClient.Close()
Return
End If
Console.Write("Serveur : ")
sMessageClient = Console.ReadLine
sw.WriteLine(sMessageClient)
sw.Flush()
End If
End While
sr.Close()
sw.Close()
FluxReseau.Close()
SocketpourClient.Close()
Console.WriteLine("Arret du serveur")
Catch e As Exception
Console.WriteLine(e.ToString)
End Try
End Sub
End Class
End Namespace |
Partager