Скачиваний:
14
Добавлен:
01.05.2014
Размер:
52.22 Кб
Скачать

Лабораторная работа 3. Операции над каталогами и файлами

Цель работы. Разработать приложение для работы с каталогами и файлами

    1. Возможности программы:

  • создание и удаление заданных директорий

  • создание файлов в новых директориях

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

3.2. Используемые функции Win32 API:

Таблица вариантов

Вар.01

Вар.02

Вар.03

Вар.04

Вар.05

Вар.06

Вар.07

Вар.08

Вар.09

Вар.10

CreateDirectory

+

+

+

+

+

+

+

+

+

+

RemoveDirectory

+

+

+

+

+

+

+

+

+

+

CopyFile

+

+

MoveFile

+

+

+

+

+

ReplaceFile

+

+

+

DeleteFile

+

+

+

+

+

+

+

+

+

+

Вар.11

Вар.12

Вар.13

Вар.14

Вар.15

Вар.16

Вар.17

Вар.18

Вар.19

Вар.20

CreateDirectory

+

+

+

+

+

+

+

+

+

+

RemoveDirectory

+

+

+

+

+

+

+

+

+

+

CopyFile

+

+

+

MoveFile

+

+

+

+

ReplaceFile

+

+

+

DeleteFile

+

+

+

+

+

+

+

+

+

+

Приложение 3. Функции и структуры для операций над каталогами и файлами

BOOL CreateDirectory( //Создание каталога

LPCTSTR lpPathName, // directory name – имя создаваемого каталога [in]

LPSECURITY_ATTRIBUTES lpSecurityAttributes // SD – дескриптор безопасности [in/out]

);

BOOL CreateDirectoryEx( // Создание каталога

LPCTSTR lpTemplateDirectory, // template directory – образец каталога [in]

LPCTSTR lpNewDirectory, // directory name – имя создаваемого каталога [in]

LPSECURITY_ATTRIBUTES lpSecurityAttributes // SD – дескриптор безопасности [in]

);

BOOL RemoveDirectory( // Удаление каталога

LPCTSTR lpPathName // directory name – путь [in]

);

BOOL CopyFile( // Копирование файла

LPCTSTR lpExistingFileName, // name of an existing file – имя существующего файла [in]

LPCTSTR lpNewFileName, // name of new file – имя нового файла [in]

BOOL bFailIfExists // operation if file exists – учет коллизий с новым именем [in]

);

BOOL CopyFileEx( // Копирование файла

LPCTSTR lpExistingFileName, // name of existing file - имя существующего файла [in]

LPCTSTR lpNewFileName, // name of new file – имя нового файла [in]

LPPROGRESS_ROUTINE lpProgressRoutine, // callback function – обработчик [in]

LPVOID lpData, // callback parameter – данные для обработчика [in]

LPBOOL pbCancel, // cancel status – отказ от обработки [in]

DWORD dwCopyFlags // copy options – флаги копирования [in]

);

BOOL MoveFile( // Перемещение файла

LPCTSTR lpExistingFileName, // file name – имя существующего файла [in]

LPCTSTR lpNewFileName // new file name – имя нового файла [in]

);

BOOL MoveFileEx( // Перемещение файла

LPCTSTR lpExistingFileName, // file name – имя существующего файла [in]

LPCTSTR lpNewFileName, // new file name – имя нового файла [in]

DWORD dwFlags // move options – флаги перемещения [in]

BOOL ReplaceFile( // Замещение файла

LPCTSTR lpReplacedFileName, // file name – имя замещаемого файла [in]

LPCTSTR lpReplacementFileName, // replacement file – имя замещающего файла [in]

LPCTSTR lpBackupFileName, // optional backup file – имя сохраняемого файла [in]

DWORD dwReplaceFlags, // replace options – флаги замещения [in]

LPVOID lpExclude, // reserved – резерв [in]

LPVOID lpReserved // reserved – резерв [in]

);

BOOL DeleteFile( // Удаление файла

LPCTSTR lpFileName // file name – имя файла [in]

);