Вниз
Скачать: 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 вся ветка

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



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


1-96170
MakNik
2003-09-16 13:09
2003.09.29
QReport


1-96292
Макс
2003-09-16 20:28
2003.09.29
Свой компонент


6-96325
Кодер
2003-07-30 20:54
2003.09.29
Кто есть кто? (TServerSocket)


1-96232
-=GaLaN=-
2003-09-17 17:03
2003.09.29
Работа с буфером обмена




   Наверх