Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.12;
Скачать: CL | DM;

Вниз

Как переместить файл в другую директорию?   Найти похожие ветки 

 
Whippi ©   (2002-11-25 08:39) [0]

Как переместить файл в другую директорию предварительно выбрав её, либо создав нужную директорию и уже туда переместиь файл?
Знаю есть компонент BrowseFolder,а дальше как? не могу разобраться.


 
Song ©   (2002-11-25 08:53) [1]

MoveFile()


 
Skif ©   (2002-11-25 08:57) [2]

Есть два варианта.
Первый - использовать функцию MoveFile(). Но при этом если папка не существует, то она ее не создаст.
Второй - использовать WinAPI
Описание:

TSHFileOpStruct= record
Wnd: HWND;
wFunc: UINT;
pFrom: PAnsiChar;
pTo: PAnsiChar;
fFlags: FILEOP_FLAGS;
fAnyOperationsAborted: BOOL;
hNameMappings: Pointer;
lpszProgressTitle: PAnsiChar; { only used if FOF_SIMPLEPROGRESS }
end;

Структура TSHFileOpStruct используется функцией SHFileOperation для проведения файловых операций.

Wnd: хэндл диалогового окна, отображающего статус операции;
wFunc: тип производимой операции:
FO_COPY - копировать файл.
FO_MOVE - переместить файл.
FO_DELETE - удалить файл.
FO_RENAME -переименовать файл.

pFrom: указатель на строку с именем исходного файла.
pTo: указатель на строку с именем файла, в который копируется, перемещается или переименовывается исходный файл.
fFlags: флаги определяющие параметры операции.
FOF_ALLOWUNDO - сохраняет информацию о возможной отмене операции.

FOF_FILESONLY - выполняет операцию только для файлов, если задана маска файлов.
FOF_MULTIDESTFILES - указывает, что pTo описывает несколько файлов (по одному на каждый файл источника) вместо одного каталога, куда должны быть помещены исходные файлы.
FOF_NOCONFIRMATION - отвечает "Да для всех" на все вопросы.
FOF_NOCONFIRMMKDIR - не требует подтверждения создания нового каталога.
FOF_NO_CONNECTED_ELEMENTS - С версии 5.0. Не перемещает связанные файлы как группу. Только перемещает указанные файлы.

FOF_NOCOPYSECURITYATTRIBS - С версии 4.71. Не копирует атрибуты безопасности файла.
FOF_NOERRORUI - Не отображает пользовательский интерфейс при ошибке.
FOF_NORECURSION - Не поддерживает рекурсивные операции в подкаталогах, работает только в локальном каталоге.
FOF_RENAMEONCOLLISION - присваивает файлу новое имя при операциях копирования, перемещения или переименования, если файл с указанным именем уже существует.
FOF_SILENT - не показывает прогресс бар отображающий ход операции.

FOF_SIMPLEPROGRESS - отображает окно прогресс бара, но не показывает имен файлов.
FOF_WANTMAPPINGHANDLE - Определяет использование поля hNameMappings. Хендл объекта должен быть освобожден функцией SHFreeNameMappings.
fAnyOperationsAborted: Принимает значение True если операция была прервана или False в ином случае.
hNameMappings: Хендл объекта содержащего массив структур SHNAMEMAPPING. Каждая структура SHNAMEMAPPING содержит старые и новые пути для каждого файла, с которым произведены операции перемещения, копирования, или переименования. Это поле используется, если установлен флаг FOF_WANTMAPPINGHANDLE.

lpszProgressTitle: указатель на строку заголовка для окна прогресса; используется только, если среди флагов есть FOF_SIMPLEPROGRESS


 
Whippi ©   (2002-11-25 08:59) [3]

Это я знаю, но хотчется и нужно как в Windows нажимаешь клавишу F6 открывается окошко с дирректориями выбираешь нужную жмешь OK и файл в той директориии. Если директории не существует то жмешь в том же окошечке кнопку создать , создаешь и файл перемещается в только что созданную директорию.


 
genie ©   (2002-12-01 16:26) [4]

Посмотри здесь в кладовке где нить (я отсюдова скачал)
pbFolder.



Страницы: 1 вся ветка

Текущий архив: 2002.12.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
4-36476
Nubie
2002-10-29 17:08
2002.12.12
?DialogBox?


6-36312
Шурило
2002-10-17 13:49
2002.12.12
соединение по тел. сети


1-36255
Sirius
2002-11-30 22:22
2002.12.12
Access violation при использовании массива


14-36399
MBo
2002-11-21 10:03
2002.12.12
Очередная несложная задачка для разминки;)


4-36458
Serd_hhc
2002-10-30 08:37
2002.12.12
Как создать Edit в чужом...