Перемещение файла
С помощью функции MoveFile вы можете выполнить перемещение файла:
BOOL MoveFile(
LPCTSTR lpExistingFileName, // адрес пути
// существующего файла
LPCTSTR lpNewFileName); // адрес пути копии файла
Параметры lpExistingFileName и lpNewFileName, определяющие, соответственно, пути к старому и новому месторасположению файла, могут указывать на разные дисковые устройства.
Немного большими возможностями обладает другая функция, предназначенная для перемещения файлов, - функция MoveFileEx:
BOOL MoveFileEx(
LPCTSTR lpExistingFileName, // адрес пути
// существующего файла
LPCTSTR lpNewFileName, // адрес пути копии файла
DWORD dwFlags); // режим копирования
Дополнительный параметр dwFlags, определяющий один из режимов копирования, может принимать логическую комбинацию следующих значений:
Значение | Описание | ||
MOVEFILE_REPLACE_EXISTING | Перемещение с замещением существующего файла | ||
MOVEFILE_COPY_ALLOWED | Если файл перемещается на другое устройство, для перемещения используются функции CopyFile и DeleteFile (удаление файла). Это значение не совместимо со значением MOVEFILE_DELAY_UNTIL_REBOOT | ||
MOVEFILE_DELAY_UNTIL_REBOOT | Файл будет перемещен только после перезапуска операционной системы Microsoft Windows NT |
Режим MOVEFILE_DELAY_UNTIL_REBOOT удобен для создания программ автоматической установки приложений (инсталляторов).