簡易聊天 伺服端
Imports System
Imports System.IO
Imports System.Net
Imports System.Net.Sockets
Imports System.Text
Imports Microsoft.VisualBasic
Module Module1
Sub Main()
Dim server As TcpListener
server = Nothing
Try
Dim port As Int32 = 13000
Dim localAddr As IPAddress = IPAddress.Parse("192.168.0.179")
server = New TcpListener(localAddr, port)
server.Start()
Dim bytes(1024) As Byte
Dim data As String = Nothing
While True
Console.Write("Chat-1 Server Waiting for a connection... ")
Dim client As TcpClient = server.AcceptTcpClient()
Console.WriteLine("Connected!")
data = Nothing
Dim stream As NetworkStream = client.GetStream()
Dim i As Int32
Dim j As String
i = stream.Read(bytes, 0, bytes.Length)
While (i <> 0)
data = System.Text.Encoding.ASCII.GetString(bytes, 0, i)
Console.WriteLine("Received: {0}", data)
Console.Write("Server: ")
j = Console.ReadLine()
Dim msg As Byte() = System.Text.Encoding.ASCII.GetBytes(j)
stream.Write(msg, 0, msg.Length)
i = stream.Read(bytes, 0, bytes.Length)
End While
client.Close()
End While
Catch e As SocketException
Console.WriteLine("SocketException: {0}", e)
Finally
server.Stop()
End Try
Console.WriteLine(ControlChars.Cr + "Hit enter to continue....")
Console.Read()
End Sub
End Module
------------------------------------------------------------------------------------------------------------------
簡易聊天 顧客端
Imports System
Imports System.IO
Imports System.Net
Imports System.Net.Sockets
Imports System.Text
Imports Microsoft.VisualBasic
Module Module1
Sub Main()
Connect("192.168.0.179", " How are you server-1")
End Sub
Sub Connect(ByVal server As [String], ByVal message As [String])
Try
Dim port As Int32 = 13000
Dim client As New TcpClient(server, port)
Dim data As [Byte]() = System.Text.Encoding.ASCII.GetBytes(message)
Dim stream As NetworkStream = client.GetStream()
Dim i As Integer
Dim j As String
For i = 0 To 3
Console.Write("Client: ")
j = Console.ReadLine()
data = System.Text.Encoding.ASCII.GetBytes(j)
stream.Write(data, 0, data.Length)
data = New [Byte](256) {}
Dim responseData As [String] = [String].Empty
Dim bytes As Int32 = stream.Read(data, 0, data.Length)
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes)
Console.WriteLine("From server: {0}", responseData)
Next i
client.Close()
Catch e As ArgumentNullException
Console.WriteLine("ArgumentNullException: {0}", e)
Catch e As SocketException
Console.WriteLine("SocketException: {0}", e)
End Try
Console.WriteLine(ControlChars.Cr + " Press Enter to continue...")
Console.Read()
End Sub 'Connect
End Module