Click here to Skip to main content
Licence CPOL
First Posted 6 May 2006
Views 138,704
Downloads 13,024
Bookmarked 61 times

Chat Client Server

By | 18 May 2007 | Article
An implementation of chat client and server with win32 sockets
Sample Image - chat_client_server.jpg - Click to enlarge image

Introduction

Recently I got myself introduced to socket programming. I read through many books and articles to get an insight into the subject. After learning a bit, I decided to share my knowledge with the world. For this purpose, I created a simple console based chat application. I hope this will be a good reference code for C++ socket programming. I am going to introduce the following concepts to you here.

  • Sockets
  • Multi threading

What is Chat Client Server?

The demo project given along with this article consists of two console-based applications.

Chat Server

Chat server is an application which does the following operations:

  • Listens for incoming calls from clients. Client running in any PC can connect to the server if IP address of the server is known.
  • Listens for messages from all the connected clients.
  • Broadcasts the message from clients to all the clients connected to the server.
  • You can also type-in messages in the server, which will be broadcasted to all the clients.

Chat Client

Chat client does the following things:

  • Sends messages to server as well as to all the connected clients.
  • Views the messages from all the clients and server.

Please download the PDF document to read the rest of the documentation. I have created a PDF because the article consists of 2-3 diagrams.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Boby Thomas P



Australia Australia

Member

Check my homepage for more details - Click Here

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
AnswerRe: Error? PinmemberBoby Thomas P0:37 10 Nov '06  
Generalbehavior after cable break Win2k/ Winxp PinmemberBennet Yee20:13 12 May '06  
Generali have an idea Pinmembernoise@BUPT15:52 9 May '06  
GeneralRe: i have an idea PinmemberBoby Thomas P21:22 9 May '06  
Generalintegration of project Pinmemberdimas759:54 7 May '06  
GeneralRe: integration of project Pinmembermysterious_caveman10:43 10 Jun '07  
Generalthanks Pinmemberraul_sfk0:48 7 May '06  
I read your article Interprocess Communication using Sockets.
in codeproject.com. that's great!
 
one point i do not really understand. in code, server has created two separate sockets.
Why you need separate sockets?
would you please give me a hand or hint ?
thank you very much!!Laugh | :laugh:
GeneralRe: thanks PinmemberBoby Thomas P8:56 7 May '06  
Generalinfo required PinmemberSunithaC0:43 7 May '06  
GeneralRe: info required PinmemberBoby Thomas P8:56 7 May '06  
GeneralRe: info required Pinmemberroninttk22:13 9 May '06  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web03 | 2.5.120529.1 | Last Updated 19 May 2007
Article Copyright 2006 by Boby Thomas P
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid