Закрыт

с++ приложение

Написать два приложения Клиент и Сервер. Клиент периодически соби-рает всю иерархию окон пользовательской сессии и отправляет ее в json-фор-мате на сервер через tcp-соединение по сокету.

Задание выполнять в Microsoft Visual Studio Community 2015 Update 3 (желательно) или выше.

Общие требования

1) WinAPI использовать для работы с сокетами, получения окон, WinAPI-ошибками и синхронизации потоков (Event, Mutex и т.д.).

2) Не приветствуется написание кода в С-стиле.

3) Обработка и вывод всех ошибок. Ошибки (включая и WinAPI-ошибки) нужно преобразовывать в человеко-читаемый вид.

4) Все приложения должны быть консольными.

5) Все приложения должны запускаться с правами администратора.

6) Все сообщения (ошибки, лог-сообщения и т.д.) должны выводится в консоль.

7) Должны присутствовать unit-тесты.

8) Приложения должны корректно и немедленно завершаться после ввода в консоль слова «exit».

9) Должна корректно обрабатываться ситуация разрыва соединения. Не требуется реализовывать корректное восстановление соединения и «догрузку» данных.

10) Убедиться, что нет «утечек» сокетов.

Требования к Клиенту

1) Адрес сервера для передачи данных должен задаваться через консоль перед началом работы приложения.

2) Периодичность сбора (и отправки) окон должна задаваться через кон-соль.

3) Должна корректно обрабатываться ситуация отсутствия сервера.

4) Окно должно содержать заголовок и класс.

5) Собирать только «видимые» окна.

6) Данные по окнам должны быть представлены в виде иерархии, кото-рая должна соответствовать windows-иерархии.

Требования к серверу

1) Полученное сообщение от Клиента должно сохраняться в один файл.

2) Путь до директории для файла должен передаваться через консоль пе-ред началом работы приложения.

3) Сервер должен поддерживать несколько клиентов.

Навыки: .NET, Microsoft, Visual Basic, VB.NET

О клиенте:
( 0 отзыв(-а, -ов) ) Saransk, Russian Federation

ID проекта: #21207243