Skip to content

A UDP server-client system that broadcasts real-time mouse cursor coordinates (Windows) to connected clients.

License

Notifications You must be signed in to change notification settings

Flowzero/SRW__ClientServerCommunication

Repository files navigation

Introduction

This is a project for my Scientific Research Work (SRW) for Volgograd State University for the 4th semester in the direction of "Software Engineering".

This repository includes a minimum viable product (MVP), namely a UDP server that tracks the cursor position and sends its coordinates to all connected devices in real time. Based on this repository, a larger project will be built: a software keyboard, video, mouse (KVM) cross-platform switch. The project is inspired by Mouse Without Borders and Input Leap.

Features

This is a basic functionality build from 30.03.2025

Server:

  • Accepts local UDP connections (at 127.0.0.1). There is no resolver yet
  • Sends cursor cooradinates every 100 ms
  • Platform-dependent (for now only Windows)

Known Issues: no handler for client terminating connection case (Receive error: Connection not established because the destination computer rejected the connection request)

Client:

  • Establishing connection to the server at the specified IP and port
  • Receiving and outputting the received cursor coordinates to the console

How to use

Compile Server.cpp and Client.cpp to get exe files. Run Server.exe and only after that Client.exe (The order is important). Now the server is handling one client. You can run the Client.exe again to emulate multiple connections.

Licenses

The software product uses the Boost C++ Libraries.
Boost is distributed under the Boost Software License, Version 1.0.
A copy of the license is available here.

This project is licensed under the MIT License.

About

A UDP server-client system that broadcasts real-time mouse cursor coordinates (Windows) to connected clients.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published