Programming Tutorials

Chat client in

By: Issac in Tutorials on 2009-02-21  

The Chat Client is a Windows based Application and its main function is to send message to Chat Server. The connection request is one which intiates all sort of acivities and Chat client is responsible for that.

The VB.NET Multithreaded Chat Server Program has two sections.

  • Chat Server
  • Chat Client

The Chat Client here is to connect the PORT 8888 of the Chat Server in " ". Here we have given "", because Chat Server and Chat Client are running on the same machine. When we start the Chat Client program, we have to enter a User Name just for identifying in Server. The Client program connect to the Chat Server and starts a Thread for receiving the messages from client, Here we implement an infinite loop in the function getMessage () and call this function in a Thread.


Create a new VB.NET Windows based project and put the source code in it..

Imports System.Net.Sockets
Imports System.Text
Public Class Form1
    Dim clientSocket As New System.Net.Sockets.TcpClient()
    Dim serverStream As NetworkStream
    Dim readData As String
    Dim infiniteCounter As Integer

    Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click
        Dim outStream As Byte() = _
        System.Text.Encoding.ASCII.GetBytes(TextBox2.Text + "$")
        serverStream.Write(outStream, 0, outStream.Length)
    End Sub

    Private Sub msg()
        If Me.InvokeRequired Then
            Me.Invoke(New MethodInvoker(AddressOf msg))
            TextBox1.Text = TextBox1.Text + _
			 Environment.NewLine + " >> " + readData
        End If
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button2.Click
        readData = "Conected to Chat Server ..."
        clientSocket.Connect("", 8888)
        'Label1.Text = "Client Socket Program - Server Connected ..."
        serverStream = clientSocket.GetStream()

        Dim outStream As Byte() = _
        System.Text.Encoding.ASCII.GetBytes(TextBox3.Text + "$")
        serverStream.Write(outStream, 0, outStream.Length)

        Dim ctThread As Threading.Thread = _
		 New Threading.Thread(AddressOf getMessage)
    End Sub

    Private Sub getMessage()
        For infiniteCounter = 1 To 2
            infiniteCounter = 1
            serverStream = clientSocket.GetStream()
            Dim buffSize As Integer
            Dim inStream(10024) As Byte
            buffSize = clientSocket.ReceiveBufferSize
            serverStream.Read(inStream, 0, buffSize)
            Dim returndata As String = _
            readData = "" + returndata
    End Sub
End Class

Add Comment

* Required information


No comments yet. Be the first!

Most Viewed Articles (in )

Latest Articles (in