Программирование для Windows NT© Александр Фролов, Григорий ФроловТом 26, часть 1, М.: Диалог-МИФИ, 1996, 272 стр. Еще несколько операций с файламиОчень часто приложениям нужно выполнять такие операции, как копирование, перемещение или удаление файлов. В программном интерфейсе операционной системы Microsoft Windows NT есть удобные функции, предназначенные для выполнения этих операций. Копирование файлаДля копирования файла вы можете использовать функцию CopyFile: BOOL CopyFile( LPCTSTR lpExistingFileName, // адрес пути // существующего файла LPCTSTR lpNewFileName, // адрес пути копии файла BOOL bFailIfExists); // флаг перезаписи файла Через параметр lpExistingFileName вы должны передать путь к исходному файлу, кторый будет копироваться. Путь к файлу копии задается с помощью параметра lpNewFileName. Параметр bFailIfExists определяет действия функции CopyFile, когда указанный в параметре lpNewFileName файл копии уже существует. Если значение параметра bFailIfExists равно TRUE, при обнаружении существующего файла копии функция CopyFile вернет признак ошибки (значение FALSE). Если же значение параметра bFailIfExists равно FALSE, существующий файл копии будет перезаписан. Перемещение файлаС помощью функции MoveFile вы можете выполнить перемещение файла: BOOL MoveFile( LPCTSTR lpExistingFileName, // адрес пути // существующего файла LPCTSTR lpNewFileName); // адрес пути копии файла Параметры lpExistingFileName и lpNewFileName, определяющие, соответственно, пути к старому и новому месторасположению файла, могут указывать на разные дисковые устройства. Немного большими возможностями обладает другая функция, предназначенная для перемещения файлов, - функция MoveFileEx XE "MoveFileEx" : BOOL MoveFileEx( LPCTSTR lpExistingFileName, // адрес пути // существующего файла LPCTSTR lpNewFileName, // адрес пути копии файла DWORD dwFlags); // режим копирования Дополнительный параметр dwFlags, определяющий один из режимов копирования, может принимать логическую комбинацию следующих значений:
Режим MOVEFILE_DELAY_UNTIL_REBOOT удобен для создания программ автоматической установки приложений (инсталляторов). Удаление файлаДля удаления файла вы должны использовать функцию DeleteFile: BOOL DeleteFile(LPCTSTR lpFileName); Параметр lpFileName задает путь к удаляемому файлу. В случае успеха функция возвращает значение TRUE. При ошибке (например, при попытке удаления файла, открытого этим же или другим процессом), возвращается значение FALSE. |