Форум: "Основная";
Текущий архив: 2003.09.29;
Скачать: [xml.tar.bz2];
ВнизКопирование директории Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.009 c