Skip to content

This chat room project uses Winsock API to enable client/server communication via TCP and UDP protocols. The server broadcasts TCP information every second using UDP, while the client is multithreaded, with TCP receiver and sender on separate threads.

Notifications You must be signed in to change notification settings

EthanStanks/ChatRoom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Winsock Networking Chat Room

This is a chat room project developed using the Winsock API, featuring a client/server architecture with support for both TCP and UDP protocols. The server uses a non-blocking multiplexed TCP socket and broadcasts TCP information using UDP every second. The client connects to the server through TCP after receiving the UDP broadcast. Additionally, the client is multithreaded, with the TCP receiver running on a detached thread and the TCP sender running on the main thread.

Installation

  • To run this project on your local machine, you need to have Visual Studio installed.
  • Clone the repository and open the solution file in Visual Studio.
  • Build the project and run the server application, followed by the client application.
  • Make sure that the server application is running before starting the client application.
  • Usage

    • After running the client application, you will be prompted to enter a username.
    • Once you have entered a username, the client will connect to the server using TCP protocol.
    • You will then be able to join the chat room and start sending messages to other users.

    About

    This chat room project uses Winsock API to enable client/server communication via TCP and UDP protocols. The server broadcasts TCP information every second using UDP, while the client is multithreaded, with TCP receiver and sender on separate threads.

    Topics

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published

    Languages