網頁文章 網頁文章

 伺服一

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

            ' Set the TcpListener on port 13000. 

            Dim port As Int32 = 13000

            Dim localAddr As IPAddress = IPAddress.Parse("192.168.0.157")

 

            server = New TcpListener(localAddr, port)

 

            ' Start listening for client requests.

            server.Start()

 

            ' Buffer for reading data 

            Dim bytes(1024) As Byte

            Dim data As String = Nothing

 

            ' Enter the listening loop. 

            While True

                Console.Write("10179507-1Waiting for a connection... ")

 

                ' Perform a blocking call to accept requests. 

                ' You could also user server.AcceptSocket() here. 

                Dim client As TcpClient = server.AcceptTcpClient()

                Console.WriteLine("Connected!")

 

                data = Nothing

 

                ' Get a stream object for reading and writing 

                Dim stream As NetworkStream = client.GetStream()

 

                Dim i As Int32

 

                ' Loop to receive all the data sent by the client.

                i = stream.Read(bytes, 0, bytes.Length)

                While (i <> 0)

                    ' Translate data bytes to a ASCII string.

                    data = System.Text.Encoding.ASCII.GetString(bytes, 0, i)

                    Console.WriteLine("Received: {0}", data)

 

                    ' Process the data sent by the client.

                    data = data.ToUpper()

                    Dim msg As Byte() = System.Text.Encoding.ASCII.GetBytes(data)

 

                    ' Send back a response.

                    stream.Write(msg, 0, msg.Length)

                    Console.WriteLine("Sent: {0}", data)

 

                    i = stream.Read(bytes, 0, bytes.Length)

 

                End While

 

                ' Shutdown and end connection

                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()
        Dim server As TcpListener
 
        server = Nothing
 
        Try
 
            ' Set the TcpListener on port 15000.
 
            Dim port As Int32 = 15000
 
            Dim localAddr As IPAddress = IPAddress.Parse("192.168.0.157")
 
 
 
            server = New TcpListener(localAddr, port)
 
 
 
            ' Start listening for client requests.
 
            server.Start()
 
 
 
            ' Buffer for reading data
 
            Dim bytes(1024) As Byte
 
            Dim data As String = Nothing
 
 
 
            ' Enter the listening loop.
 
            While True
 
                Console.Write("10179507-2 Waiting for a connection... ")
 
 
 
                ' Perform a blocking call to accept requests.
 
                ' You could also user server.AcceptSocket() here.
 
                Dim client As TcpClient = server.AcceptTcpClient()
 
                Console.WriteLine("Connected!")
 
 
 
                data = Nothing
 
 
 
                ' Get a stream object for reading and writing
 
                Dim stream As NetworkStream = client.GetStream()
 
 
 
                Dim i As Int32
 
 
 
                ' Loop to receive all the data sent by the client.
 
                i = stream.Read(bytes, 0, bytes.Length)
 
                While (i <> 0)
 
                    ' Translate data bytes to a ASCII string.
 
                    data = System.Text.Encoding.ASCII.GetString(bytes, 0, i)
 
                    Console.WriteLine("Received: {0}", data)
 
 
 
                    ' Process the data sent by the client.
 
                    data = data.ToUpper()
 
                    Dim msg As Byte() = System.Text.Encoding.ASCII.GetBytes(data)
 
 
 
                    ' Send back a response.
 
                    stream.Write(msg, 0, msg.Length)
 
                    Console.WriteLine("Sent: {0}", data)
 
 
 
                    i = stream.Read(bytes, 0, bytes.Length)
 
 
 
                End While
 
 
 
                ' Shutdown and end connection
 
                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 'Main
 
 
 
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.157", "How are you server-1")
    End Sub
    Sub Connect(ByVal server As [String], ByVal message As [String])
 
        Try
 
            ' Create a TcpClient.
 
            ' Note, for this client to work you need to have a TcpServer 
 
            ' connected to the same address as specified by the server, port
 
            ' combination.
 
            Dim port As Int32 = 13000
 
            Dim client As New TcpClient(server, port)
 
 
 
            ' Translate the passed message into ASCII and store it as a Byte array.
 
            Dim data As [Byte]() = System.Text.Encoding.ASCII.GetBytes(message)
 
 
 
            ' Get a client stream for reading and writing.
 
            '  Stream stream = client.GetStream();
 
            Dim stream As NetworkStream = client.GetStream()
 
 
 
            ' Send the message to the connected TcpServer. 
 
            stream.Write(data, 0, data.Length)
 
 
 
            Console.WriteLine("Sent: {0}", message)
 
 
 
            ' Receive the TcpServer.response.
 
            ' Buffer to store the response bytes.
 
            data = New [Byte](256) {}
 
 
 
            ' String to store the response ASCII representation.
 
            Dim responseData As [String] = [String].Empty
 
 
 
            ' Read the first batch of the TcpServer response bytes.
 
            Dim bytes As Int32 = stream.Read(data, 0, data.Length)
 
            responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes)
 
            Console.WriteLine("Received: {0}", responseData)
 
 
 
            ' Close everything.
 
            stream.Close()
 
            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