Вниз
Скачать: CL | DM;

Перенос файлов без запроса   Найти похожие ветки 

 
Pavelkq   (2008-03-26 07:23) [0]

Пишу программу для автоматического копирования файлов в ночное время на сервере. Для этого воспользовался процедурой:
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);

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


 
Ega23 ©   (2008-03-26 07:59) [1]

TFileStream + fmShareDenyNone + f1


 
Loginov Dmitry ©   (2008-03-26 08:06) [2]

CopyFile() + f1


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

FOF_NO_UI


 
guav ©   (2008-03-26 11:51) [4]

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


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


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

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



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
15-1204617442
Kolan
2008-03-04 10:57
2008.04.20
А можно ли на двух мониторах в паре поставить разное разрешение?


15-1204648885
Правильный_Вася
2008-03-04 19:41
2008.04.20
цвета палитры в Win98SE под VMWare


2-1206685011
Uno-84
2008-03-28 09:16
2008.04.20
Пересчет количества строк в таблице


15-1205082091
who
2008-03-09 20:01
2008.04.20
Игорь Шевченко


2-1206708622
asdf2
2008-03-28 15:50
2008.04.20
DataSet




   Наверх