4 программы на C++ в Embarcadero C++ Builder XE5
Лабораторная работа
в среде программирования Си++
Среда программирования: Си++
Название работы: 4 программы на C++ в Embarcadero C++ Builder XE5
Вид работы: Лабораторная работа
Описание: 4 программы на C++ в Embarcadero C++Builder XE5.
ОБЩИЕ ТРЕБОВАНИЯ
1. Язык программирования C++.
2. Среда разработки Embarcadero C++Builder XE5. Конкретная версия Version 19.0.13476.4176 не обязательна.
3. Результатом каждой программы является каталог с проектом, по которому можно восстановить программу, а так же полностью автономный исполняемый файл (*.exe), корректно работающий любом компьютере под управлением ОС Windows. Для проверки можно использовать «чистую» виртуальную машину с Windows 7. Таким же образом проверяет и преподаватель.
4. По сути, каждая следующая программа делается на основе предыдущей.
5. Теоретические сведения по файловой системе прилагаются.
6. Для тестирования программы проще всего флеш-накопитель небольшого объема отформатировать в файловую систему exFAT.
7. Все программы – графические приложения.
8. Фотографии лекций (довольно качественные) прилагаются. Там же записано задание со слов преподавателя.
9. По программам 1-3 имеется другой вариант выполнения. Вариант видоизменения этого кода (например, имена переменных, форматирования) не допускается.
10. Комментарий кода.
11. Срок исполнения – чем скорее, тем лучше, но не позднее 19.11.2017 23:59 МСК.
12. Связь со мной по электронной почте nepal007@mail.ru
ТРЕБОВАНИЯ К ПРОГРАММАМ
1. Работа с физическим устройством
Написать программу, предназначенную для низкоуровневого доступа к данным ФС exFAT.
Функционал программы:
1. Открытие диска или файла по имени.
2. Проверка, что открываемый диск содержит ФС exFAT (по OEM-имени).
3. Считывание и сохранение служебной информации о ФС (в первую очередь это номер сектора, в котором находится корневой каталог) (желательно в отдельном объекте, а не компоненте формы).
4. Считывание и отображение корневого каталога в VirtualStringTree.
5. Проверка отсутствия фрагментирования файла при выделении файла (это по флагу ФС).
6. Чтение первого кластера выбранного файла и его сохранение в файл с заданным именем (кнопка).
7. Закрытие диска (файла).
Работа с ФС exFAT должна осуществляться в отдельном классе.
По компоненту VirtualStringTree файлы прилагаются.
2. Многопоточное приложение
Приложение, которое производит поиск заголовков известных типов файлов на разделе с ФС exFAT
На основе предыдущей программы.
Приложение ищет заголовки известных типов файлов на разделе с exFAT.
Перебрать все кластеры раздела, найти признаки наличия в кластере известного типа файла (например, *.jpg по сигнатуре в начале файла).
Использовать функцию memcmp, чтобы сравнивать 2 массива байтов.
Приложение позволяет открыть раздел, запустить поиск. Результаты поиска выводятся в компонент VirtualStringTree по ходу поиска в реальном времени.
При этом главная форма не блокируется (поиск осуществляется в отдельном потоке).
Работа с диском в первом потоке, сравнение во втором.
MainForm (создает поток)-> FileSystemThread (создает поток)-> SearchThread
3. Регулярные выражения
В многопоточном приложении использовать не memcmp, а регулярные выражения. (Изменить предыдущую программу).
Дополнительно эту версию программы необходимо сделать однопоточной: поиск и вывод результатов в одном потоке.
4. Паттерны проектирования
Предыдущую программу (однопоточный вариант) изменить, чтобы сделать сигнатурный поиск по кластерам, а перебор кластеров итератором.
Сделать декоратор, который позволит перебирать кластеры только с заданной сигнатурой.
Год: 2017
Данный заказ (лабораторная работа) выполнялся нашим сайтом в 2017-м году, в рамках этого заказа была разработана программа в среде программирования Си++. Если у Вас похожее задание на программу, которую нужно написать на Си++, либо на другом языке программирования, пожалуйста заполните форму, приведённую ниже, после чего Ваше задание в первую очередь рассмотрит наш программист, выполнявший в 2017-м году этот заказ, если он откажется, то Ваше задание оценят другие наши программисты в течение 48-и часов, если оценка нужна срочно, просим Вас оставить пометку об этом - напишите в тексте задания фразу "СРОЧНЫЙ ЗАКАЗ".
Тел.:
+79374242235
Viber: +79374242235 Telegram: kursovikcom ВКонтакте: kursovikcom WhatsApp +79374242235 E-mail: info@kursovik.com Skype: kursovik.com |