Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МетУказКурсРабСистемПрогрЗИЭИТ2005.doc
Скачиваний:
6
Добавлен:
13.09.2019
Размер:
698.37 Кб
Скачать

Тема 12. Утилита для очистки системного реестра Windows.

Техническое задание.

Разработать утилиту, сканирующую системный реестр Windows и выводящую список всех зарегистрированнных в нем программ. Отметив программы, уже не существующие на жестком диске, вы сможете удалить их ключи из реестра.

Методические указания.

Смотри методические указания к предыдущей теме.

Тема 13. Утилита, отслеживающая изменения в файловой системе Windows в заданных каталогах.

Техническое задание.

Разработать утилиту, позволяющую организовать слежение за изменениями объектов файловой системы.

Методические указания.

Windows позволяет организовать слежение за изменениями объектов файловой системы. Для этого служит функция FindFirstChangeNotification:

HANDLE FindFirstChangeNotification(LPCTSTR lpPathName, //Путь к папке,

// изменения в которой нас интересуют

  BOOL bWatchSubtree,  // Задает необходимость слежения за

                          // изменениями во вложенных папках

  DWORD  dwNotifyFilter); // Фильтр событий

Параметр dwNotifyFilter — это битовая маска из одного или нескольких следующих значений:

FILE_NOTIFY_CHANGE_FILE_NAME

Слежение ведется за любым изменением имени файла, в том числе за созданием и удалением файлов

FILE_NOTIFY_CHANGE_DIR_NAME

Слежение ведется за любым изменением имени папки, в том числе за созданием и удалением папок

FILE_NOTIFY_CHANGE_ATTRIBUTES

Слежение ведется за любым изменением атрибутов

FILE_NOTIFY_CHANGE_SIZE

Слежение ведется за изменением размера файлов. Изменение размера происходит при записи в файл. Функция ожидания срабатывает только после успешного сброса дискового кэша

FILE_NOTIFY_CHANGE_LAST_WRITE

Слежение ведется за изменением времени последней записи в файл, то есть фактически за любой записью в файл. Функция ожидания срабатывает только после успешного сброса дискового кэша

FILE_NOTIFY_CHANGE_SECURITY

Слежение ведется за любыми изменениями дескрипторов защиты

Идентификатор, возвращенный этой функцией, может использоваться в любой функции ожидания. Он переходит в сигнальное состояние, когда в папке происходят изменения, запрошенные для слежения.  Можно продолжить слежение, используя функцию FindNextChangeNotification:

BOOL FindNextChangeNotification(HANDLE hChangeHandle).

По завершении работы идентификатор должен быть закрыт при помощи функции FindCloseChangeNotification:

BOOL FindCloseChangeNotification(HANDLE hChangeHandle).

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

Тема 14. Просмотрщик таблицы разделов и fat.

Техническое задание.

Разработать приложение Windows для просмотра в удобной форме информации о таблице размещения файлов FAT и разделов диска.

Методические указания.

Смотри методические указания к теме 3.

Тема 15. Утилита MaxSplitter

Техническое задание.

Разработать утилиту для разделения длинных файлов на части заданной фиксированной длины. Эта же утилита должна, при задании определенных опций, восстанавливать исходный файл.

Методические указания.

Смотри методические указания к теме 15.