Вниз
Скачать: 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
4-96473
chs2r
2003-07-29 18:27
2003.09.29
TWinControl


3-96111
Вован
2003-09-09 11:24
2003.09.29
Как заставить Database Desktop понимать русский язык?


3-96102
SkullNet
2003-09-09 18:43
2003.09.29
Как перехватить ошибку записи?


1-96258
aldapooh
2003-09-17 13:33
2003.09.29
HTML Help


3-96077
nikkkk
2003-09-09 17:33
2003.09.29
Переиндексация таблиц DBASE IV




   Наверх