Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перенос файлов без запроса [D6, XP]


Pavelkq ©   (2008-03-26 07:23:00) 

Пишу программу для автоматического копирования файлов в ночное время на сервере. Для этого воспользовался процедурой:
procedure PCopy (PFrom : string ; PTo : string; POperation: Byte);
var
 OpStruc: TSHFileOpStruct;
 frombuf, tobuf: array [0..128] of Char;
begin
FillChar( frombuf, Sizeof(frombuf), 0 );
FillChar( tobuf, Sizeof(tobuf), 0 );
StrPCopy( frombuf, PFrom );
StrPCopy( tobuf, PTo );
with OpStruc do begin
 Wnd:= HANDLE_FLAG_INHERIT;
 if POperation=1 then wFunc:= FO_COPY;
 if POperation=0 then wFunc:= FO_DELETE;
 pFrom:= @frombuf;
 pTo:=@tobuf;
 fFlags:= FOF_NOCONFIRMATION;
 fAnyOperationsAborted:= False;
 hNameMappings:= Nil;
 lpszProgressTitle:= Nil;
end;
ShFileOperation( OpStruc );
end;

Далее вызываю простейшим способом:
//Создаем папку текущей даты
PFolder:='d:\copy\'+ DateToStr(Date);
CreateDir (PFolder);
//Копирование всей общей
PCopy ('d:\users\общая\*.*',PFolder,1);

После выполнения программы папка пуста. Происходит это, очевидно, в следствии того, что программа натыкается на файлы недоступные для чтения. Это видно потому, что при копировании обычными средствами вынды появляется сообщение "Не удается скопировать файл". Как можно заставить программу игнорировать недоступные файлы и переходить к следующим?


Рамиль   (2008-03-26 11:55:00) [1]

xcopy /?
Справится со всем.


guav   (2008-03-26 11:51:00) [2]

> [1] Ega23 ©   (26.03.08 07:59)
> TFileStream + fmShareDenyNone + f1


Не советую, если есть полезные метаданные, они не будут скопированы, или их все прийдётся скопировать вручную, будет много лишнего кода.


guav   (2008-03-26 11:47:00) [3]

FOF_NO_UI


Loginov Dmitry   (2008-03-26 08:06:00) [4]

CopyFile() + f1


Ega23   (2008-03-26 07:59:00) [5]

TFileStream + fmShareDenyNone + f1


Наверх

Титульная страница Поиск, карта сайта Написать письмо