Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.05.27;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.06 c
15-1177259459
MsGuns
2007-04-22 20:30
2007.05.27
Сегодня 133 лет со дня рождения В.И. Ленина


15-1177575500
infom
2007-04-26 12:18
2007.05.27
Повернуть отрезок на определенный угол.


15-1177872605
antonn
2007-04-29 22:50
2007.05.27
Вопросик по регулярным выражениям. В пхп:)


2-1178748897
switch
2007-05-10 02:14
2007.05.27
Окно ввода пароля


2-1178785606
vitv
2007-05-10 12:26
2007.05.27
Получение хэндла родительской формы.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский