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

Вниз

Копирование директории   Найти похожие ветки 

 
lex7   (2003-09-18 09:33) [0]

Использую для копирования папки следующую функцию:

function CopyDirectory(FromFolder,
ToFolder: string;
CopyMode: FILEOP_FLAGS = FO_COPY
): boolean;
var
Fo: TSHFileOpStruct;
buffer: array[0..4096] of char;
p: pchar;
sr: TSearchRec;
begin
Result:=false;

if not DirectoryExists(FromFolder) then exit;

FillChar(Buffer, sizeof(Buffer), #0);
p := @buffer[0];
pPathCorrect(FromFolder);
StrECopy(p, PChar(FromFolder + "*.*")); // откуда копируем
FillChar(Fo, sizeof(Fo), #0);
Fo.Wnd := Application.Handle;
Fo.wFunc := CopyMode;
Fo.pFrom := @Buffer[0];
Fo.pTo := PChar(ToFolder); // куда копируем
Fo.fFlags := FOF_NOCONFIRMATION + FOF_NOCONFIRMMKDIR;
try
Application.MainForm.Enabled:=false;
if ((SHFileOperation(Fo) <> 0) or (Fo.fAnyOperationsAborted <> false)) then
Application.MessageBox("Копирование прервано.", "Ошибка", MB_OK + MB_ICONERROR)
else
Result:=true;
finally
Application.MainForm.Enabled:=true;
end;
end;
//------------------------------------------------------------

При копирование на локальный диск (ToFolder) все нормально, а на сетевой - ошибка. В чем причина? Использую 2000-ю.


 
Song ©   (2003-09-18 10:27) [1]

Значит на сетевом диске запрещён доступ на запись. Анализируй ошибку через GetLastError



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

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

Наверх




Память: 0.46 MB
Время: 0.016 c
4-96498
Yuri Btr
2003-07-28 21:10
2003.09.29
Смена принтера по умолчанию


1-96189
Toxa
2003-09-16 10:51
2003.09.29
Ссылка 2-х записей друг на друга


3-96076
firewal1
2003-08-28 13:12
2003.09.29
Как в операторе INSERT INTO ... записать двоичные данные в BLOB


3-96144
DelphiM
2003-09-08 13:44
2003.09.29
Помогите не пойму


1-96246
Karburator
2003-09-17 15:52
2003.09.29
Файл