Write two applications Client and Server. The client periodically collects the entire hierarchy of windows in the user session and sends it in json form to the server via the tcp connection on the socket.
The task is to run in Microsoft Visual Studio Community 2015 Update 3 (desirable) or higher.
1) Use WinAPI to work with sockets, get windows, WinAPI errors and synchronize threads (Event, Mutex, etc.).
2) C-style code writing is not welcome.
3) Processing and output of all errors. Errors (including WinAPI errors) must be converted to a human-readable form.
4) All applications must be console.
5) All applications must run with administrator privileges.
6) All messages (errors, log messages, etc.) should be displayed in the console.
7) Unit tests should be present.
8) Applications should correctly and immediately terminate after entering the word “exit” into the console.
9) The disconnect situation should be handled correctly. It is not required to implement the correct connection recovery and data “loading”.
10) Make sure that there are no "leakage" of sockets.
1) The server address for data transfer should be set through the console before starting the application.
2) The frequency of collection (and dispatch) of windows should be set via con-salt.
3) The situation of server absence should be correctly processed.
4) The window should contain a title and a class.
5) Collect only “visible” windows.
6) Data on windows should be presented in the form of a hierarchy, which should correspond to the windows hierarchy.
1) The received message from the Client must be saved in one file.
2) The path to the directory for the file should be transmitted through the console before starting the application.
3) The server must support multiple clients.
Hello, We team have made same type project and we think we need to made some updates as per requirements and made it easy to release. All the payments are after your satisfaction and completion of phases. Thanks