Копирование Файлов

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

orivet
Сообщения: 5
Зарегистрирован: 16 мар 2007, 12:14

16 мар 2007, 12:50

идея следующая...
писал программку для бэкапа некоторых папок на сетевую машину...
пользоволся createprocess процедурой вызывал досовкую xcopy с набором параметров...
на первое время ничего но дело в том, что xcopy вызывает консолю в которой там просвечиваются копированные файлы... и дело в том что запускается сразу несколько процессов xcopy... так как нужно копировать разные папки из совершенно разных директорий с поддпиректориями... иными словами: сидит бестолковая секретарша у нее начинается копирование файлов вылетает сообщение поверх всех окон чтобы она ничего не трогала, а на заднем фоне вылетают эти консольки и все копируют... хотелось бы все таки сделать так, чтобы процесс копирования был невидим для пользователя... Облазил кучу книжек, втч Фараонова... Ничего про делфовское копирование файлов ненашел... нашел виндовое копирование файлов, да и то - только упоминания о нем... Ну типа есть функция copyfile она блин файлы копирует, ни в одной библиотеке такой функции нет.
Если кто-то может помочь буду очень благодарен, заранее спасибо.
P.S. юзаю делфи 7
BBB
Сообщения: 1272
Зарегистрирован: 27 дек 2005, 13:37

16 мар 2007, 13:46

Плохо искал.

uses Windows;

Код: Выделить всё

function CopyFile (lpExistingFileName, lpNewFileName: PChar; bFailIfExists: BOOL): BOOL; stdcall;

function CopyFileEx(lpExistingFileName, lpNewFileName: PChar;
  lpProgressRoutine: TFNProgressRoutine; lpData: Pointer; pbCancel: PBool;
  dwCopyFlags: DWORD): BOOL; stdcall;
Описание - в MSDN

А Delphi-йный хелп (у меня Delphi 6), кстати, находит функцию:

Код: Выделить всё

function CopyFileTo(const Source: string; const Destination: string): Boolean;
BBB
Сообщения: 1272
Зарегистрирован: 27 дек 2005, 13:37

16 мар 2007, 13:49

orivet, А чтобы в консоли не было списка копируемых файлов, используй при вызове xcopy перенаправление консольного вывода в NUL. Пимерно так:

xcopy {тут твои параметры} > NUL
orivet
Сообщения: 5
Зарегистрирован: 16 мар 2007, 12:14

16 мар 2007, 14:15

1) насчет небыло списка... это пофигу, на самом деле даже лучше когда он есть, чтобы человек мог воткнуть что происходит а не просто закрыть хрен пойми зачем вылезшее окошко, и, кстати, он и без нула ниче не показывает, чтобы показывал список надо дописывать парметр
2) насчет copyfile, copyfileex, copyfileto, с uses windows... не пашет... делфи 7... может сп1 надо?
orivet
Сообщения: 5
Зарегистрирован: 16 мар 2007, 12:14

16 мар 2007, 14:19

аааааааааааааа блин я идиот... простите, есть copyfile
а умного копирования с директориями нет?
тоесть только смотреть список папок откуда и создавать его там куда копировать и тд?
ну дригими словами кучу процедур писать придеца без этого...
BBB
Сообщения: 1272
Зарегистрирован: 27 дек 2005, 13:37

16 мар 2007, 16:16

orivet писал(а):аааааааааааааа блин я идиот... простите, есть copyfile
а умного копирования с директориями нет?
По-моему, "умного" копирования в WinAPI нет :)

Не исключено, то это уже кем-то написано. В виде какой-нбудь библиотеки или компонента.
orivet
Сообщения: 5
Зарегистрирован: 16 мар 2007, 12:14

16 мар 2007, 16:24

да... видимо у меня навыки поиска галимые... спасибо за помощь!
orivet
Сообщения: 5
Зарегистрирован: 16 мар 2007, 12:14

16 мар 2007, 16:28

а copyfileto Кстати у меня нет...
а как работать одновременно с copyfile, extractfilename, findfirst я так и не понял там им каждому свой тип пути к файлу подавай: string, tsearchrec, pchar... жесть
Blood_Magic
Сообщения: 268
Зарегистрирован: 30 июн 2005, 14:53

22 мар 2007, 12:47

есть умное копирование, если еще надо могу кинуть, дома есть на память не помню функцию
- Чем юзер похож на обезьяну?
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
Аватара пользователя
somewhere
Сообщения: 1837
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

22 мар 2007, 15:59

Тут где-то была тема получения списка файлов, сам лично функцию выкладывал, ищите...
It's a long way to the top if you wanna rock'n'roll
Ответить