Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС / Методические рекомендации по выполнению курсовой работы.doc
Скачиваний:
123
Добавлен:
11.04.2015
Размер:
228.86 Кб
Скачать

Тема 15. Разработка приложения по поиску заданной строки во всех текстовых файлах заданного каталога с использованием функции управления файлами Win 32 api.

Содержание задания.

Создать приложение, осуществляющее поиск заданной текстовой строки в текстовых файлах стандарта ANSI (расширение txt) из заданного каталога и его подкаталогов. Создайте в приложении необходимые элементы управления по выбору текущего каталога для поиска и задания режима поиска: только текстовые файлы самого каталога или текстовые файлы каталога и всех его подкаталогов. Создайте также поле ввода для строки поиска и список с вертикальной линейкой прокрутки для выдачи результатов поиска. В этот список должны добавляться имена файлов с полным маршрутом доступа к ним и количество вхождений заданной строки. Операции поиска должны выполняться в отдельном рабочем потоке. Синхронизацию рабочего потока с первичным потоком осуществите с помощью событий с автоматическим сбросом. Для операций с файлами использовать функции управления файлами Win 32 API. Используя редактор Edit (или WordPad с выбором MS DOS формата файла), подготовьте несколько файлов (~10) для тестирования и демонстрации программы.

Тема 16. Разработка приложения по поиску заданной строки во всех текстовых файлах заданного каталога с использованием механизма проецирования файла в память.

Содержание задания.

Создать приложение, осуществляющее поиск заданной текстовой строки в текстовых файлах стандарта ANSI (расширение txt) из заданного каталога и его подкаталогов. Создайте в приложении необходимые элементы управления по выбору текущего каталога для поиска и задания режима поиска: только текстовые файлы самого каталога или текстовые файлы каталога и всех его подкаталогов. Создайте также поле ввода для строки поиска и список с вертикальной линейкой прокрутки для выдачи результатов поиска. В этот список должны добавляться имена файлов с полным маршрутом доступа к ним и количество вхождений заданной строки. Операции поиска должны выполняться в отдельном рабочем потоке. Синхронизацию рабочего потока с первичным потоком осуществите с помощью событий с автоматическим сбросом. Для выполнения операций поиска строки в файлах использовать механизм проецирования файлов в память. Используя редактор Edit (или WordPad с выбором MS DOS формата файла), подготовьте несколько файлов (~10) для тестирования и демонстрации программы.

Тема 17. Создание набора из трех приложений, моделирующего работу автоматизированной системы продажи билетов, и иллюстрирующего решение проблемы синхронизации процессов-писателей и процессов-читателей.

Содержание задания.

Набор состоит из трех приложений: приложение базы данных билетов, приложение кассир (писатель), приложение справочная информация (читатель). Приложение базы данных билетов запускается в единственном экземпляре. Оно должно хранить набор записей о номерах рейсов с указанием текущего числа свободных мест. Для хранения этого набора записей используйте динамически распределяемую память. Должен быть предусмотрен интерфейс для ввода записи о рейсе и количестве первоначального количества свободных мест. Приложение кассир может быть запущено в нескольких экземплярах. В нем должен быть предусмотрен интерфейс для задания номера рейса, на который приобретается один билет. После удовлетворения запроса приложение закрывается. Если удовлетворить запрос нельзя должно быть выдано уведомление, что свободных мест на рейс нет. Приложение должно ожидать появления свободных мест, если только не будет закрыто принудительно, что означает снятие заявки на билет на соответствующий рейс. Приложение справочник запускается в любом числе экземпляров. Оно должно выдавать список имеющихся рейсов с текущим количеством свободных мест на каждый. Синхронизацию процессов осуществить помощью семафоров.

Тема 18. Разработка приложения по поддержке набора данных на основе файла с использованием функций Win 32 API по управлению им и взаимоисключением при чтении, изменении, добавлении и удалении записей разными экземплярами этого приложения на основе механизма блокировки части файла.

Содержание задания.

Разработать приложение по поддержке набора данных. Набор данных хранится в файле. Должны поддерживаться следующие функции: добавление записи, изменение записи, удаление записи, навигация по записям (вперед, назад, выбор записи с заданным номером). Разработайте необходимый пользовательский интерфейс по работе с набором данных (поля ввода с подписями названий полей, кнопки для выполнения команд управления, метка с отображением полного количества записей и т.д.).

Для операций с файлом использовать функции управления файлами Win 32 API. Удаляемые записи должны помечаться как удаленные, само же удаление записей с дефрагментацией файла должно производиться по отдельной команде “сжатие файла набора данных”.

Приложение должно корректно работать при запуске нескольких его копий. Для этого использовать блокирование отдельной записи при выполнении ее чтения, изменения, добавления или удаления. Процедура сжатия файла должна выполняться только, если запущен один экземпляр приложения (в противном случае приложение должно операцию не выполнять и уведомлять о невозможности ее выполнить; при выполнении этой операции должны блокироваться все записи файла).

Поля данных: Наименование товара (20 символов), Цена, Количество, Дата (поступления на склад).

Тема 19. Разработка приложения по поддержке набора данных на основе файла с использованием функций Win 32 API по управлению им и взаимоисключением при добавлении, изменении и удалении записей разными экземплярами этого приложения на основе механизма блокировки части файла.

Содержание задания.

Разработать приложение по поддержке набора данных. Набор данных хранится в файле. Должны поддерживаться следующие функции: добавление записи, изменение записи, удаление записи, навигация по записям (вперед, назад, выбор записи с заданным номером). Разработайте необходимый пользовательский интерфейс по работе с набором данных (поля ввода с подписями названий полей, кнопки для выполнения команд управления, метка с отображением полного количества записей и т.д.).

Для операций с файлом использовать функции управления файлами Win 32 API. Удаляемые записи должны помечаться как удаленные, само же удаление записей с дефрагментацией файла должно производиться по отдельной команде “сжатие файла набора данных”.

Приложение должно корректно работать при запуске нескольких его копий. Для этого использовать блокирование отдельной записи при выполнении ее изменения, добавления или удаления. Процедура сжатия файла должна выполняться только, если запущен один экземпляр приложения (в противном случае приложение должно операцию не выполнять и уведомлять о невозможности ее выполнить). Должно допускаться чтение одной и той же записи одновременно несколькими экземплярами приложений. Если одно из приложений в этот момент изменяет запись, то в других приложениях она должна тут же отобразиться (используйте по своему выбору один из механизмов оповещения об этом других экземпляров приложения, например механизм сообщений).

Поля данных: Наименование товара (20 символов), Цена, Количество, Дата (поступления на склад).