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

Вниз

:-) Анатомия копирования   Найти похожие ветки 

 
Doom-2   (2007-05-11 15:10) [0]

Копирую так:
procedure TFormMain.CopyF(copyFrom, copyTo: string);
const
BufSize = 3*4*4096;
type
PBuffer = ^TBuffer;
TBuffer = array [1..BufSize] of Byte;
var
f1, f2: file;
Size, SizeDone: integer;
Buffer: TBuffer;
begin
SizeDone:=0;
AssignFile( f1, copyFrom );
AssignFile( f2, copyTo );
Reset( f1, 1 );
Rewrite( f2, 1 );
Size := FileSize( f1 );
ProgInStat.Max := Size;
repeat
 BlockRead( f1, Buffer, BufSize, Size );
 Inc( SizeDone, Size );
 ProgInStat.Position := SizeDone;
 BlockWrite( f2, Buffer, Size );
 Application.ProcessMessages;
until Size < BufSize;
 Self.Close;
end;

procedure CreateDirect(Const Name : String);
begin
If (DirectoryExists(Name))or(Length(Name) <= 0)then
Exit;
CreateDirect(ExtractFileDir(Name));
CreateDir(Name);
end;

procedure TFormMain.DirCopy(Const InName, OutName : String);
Var SS : TSearchRec;
   Result: Integer;
begin
 CreateDirect(OutName);
  Result :=FindFirst(InName + "\*.*", faAnyFile, SS);
  While (Result=0) do begin
   If (SS.Name <> ".") and (SS.Name <> "..")
    then FormMain.CopyF(IncludeTrailingPathDelimiter(InName)+SS.Name,
     IncludeTrailingPathDelimiter(OutName)+SS.Name);
   Result :=FindNext(SS);
  end;
  FindClose(SS);
  ProgInStat.Position := 0;
end;

Всё работает, пока не начинаешь копировать с сетевого диска на локальный!
Компилятор останавливается на строке:
Reset( f1, 1 ); и пишет, что нет доступа к файлу (причём не пишет к какому)

Как это исправить? (чтобы он стал копировать отовсюду)
Как можно было бы добавить параметр (boolean) - копирование только изменившихся файлов?


 
Anatoly Podgoretsky ©   (2007-05-11 15:20) [1]

> Doom-2  (11.05.2007 15:10:00)  [0]

> Компилятор останавливается на строке:

Не может подобного компилятор сообщать


 
MBo ©   (2007-05-11 15:26) [2]

CopyFileEx используй или SHFileOperation. Зачем руками куски колбасить?


 
Doom-2   (2007-05-11 15:41) [3]

> Компилятор останавливается на строке:
Не может подобного компилятор сообщать

ну программа!

Почему с сетевого каталога копировать не хочет?


 
Правильный Вася   (2007-05-11 15:53) [4]

это на анатомия, это проктология


> Почему с сетевого каталога копировать не хочет?

пути неверные


 
Doom-2   (2007-05-11 15:53) [5]

10 раз проверил - верные!


 
Doom-2   (2007-05-11 15:57) [6]

Лишний раз ради принипа запустил....
"File access denied"


 
Anatoly Podgoretsky ©   (2007-05-11 16:31) [7]

> Doom-2  (11.05.2007 15:57:06)  [6]

Одназначно говорит - нет прав



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

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

Наверх




Память: 0.48 MB
Время: 0.042 c
2-1178727526
Dmitry_177
2007-05-09 20:18
2007.05.27
Ограниченное количество цифр в Edit при вставлении


15-1177471515
SerJaNT
2007-04-25 07:25
2007.05.27
Еще один вопрос по PHP :)


8-1158065921
NeyroSpace
2006-09-12 16:58
2007.05.27
Помогите разобраться с ф-цией ICCompress()


15-1177875190
ArtemESC
2007-04-29 23:33
2007.05.27
Паскаль-парсер...


6-1163789476
__Nick__
2006-11-17 21:51
2007.05.27
Webbrowser+рисунок.png