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

Вниз

Скопировать файл из локалки   Найти похожие ветки 

 
f0rm   (2002-01-25 11:56) [0]

Как средствами дельфи скопировать файл, например \\198.165.54.2\c\autoexecbat на свой винт, copyfile() не работает


 
Giga-Byte ©   (2002-01-25 12:00) [1]

Достал на этом сайте:

procedure FastFileCopy(Const InfileName, OutFileName: String); Const BufSize = 3*4*4096; { 48Kbytes дает прекрасный результат }
Type PBuffer = ^TBuffer;
TBuffer = array [1..BufSize] of Byte;
var Size: integer;
buffer: PBuffer;
infile, outfile: File;
SizeDone, SizeFile: Longint;
begin
if (InFileName<>OutFileName) then
begin
buffer := Nil;
AssignFile(infile,InFileName);
System.Reset(infile,1);
try
SizeFile:=FileSize(infile);
AssignFile(outfile, OutFileName);
System.Rewrite(outfile, 1);
try
SizeDone := 0;
New(Buffer);
repeat
BlockRead(infile, Buffer^, BufSize,Size);
Inc(SizeDone, Size);
BlockWrite(outfile,Buffer^, Size)
until Size<BufSize;
FileSetDate(TFileRec(outfile).Handle,
FileGetDate(TFileRec(infile).Handle));
finally
if Buffer<>Nil then Dispose(Buffer);
System.close(outfile)
end;
finally
System.close(infile);
end;
end else
Raise EInOutError.Create("File cannot be copied into itself");
end;


 
Giga-Byte ©   (2002-01-25 12:00) [2]

Достал на этом сайте:

procedure FastFileCopy(Const InfileName, OutFileName: String); Const BufSize = 3*4*4096; { 48Kbytes дает прекрасный результат }
Type PBuffer = ^TBuffer;
TBuffer = array [1..BufSize] of Byte;
var Size: integer;
buffer: PBuffer;
infile, outfile: File;
SizeDone, SizeFile: Longint;
begin
if (InFileName<>OutFileName) then
begin
buffer := Nil;
AssignFile(infile,InFileName);
System.Reset(infile,1);
try
SizeFile:=FileSize(infile);
AssignFile(outfile, OutFileName);
System.Rewrite(outfile, 1);
try
SizeDone := 0;
New(Buffer);
repeat
BlockRead(infile, Buffer^, BufSize,Size);
Inc(SizeDone, Size);
BlockWrite(outfile,Buffer^, Size)
until Size<BufSize;
FileSetDate(TFileRec(outfile).Handle,
FileGetDate(TFileRec(infile).Handle));
finally
if Buffer<>Nil then Dispose(Buffer);
System.close(outfile)
end;
finally
System.close(infile);
end;
end else
Raise EInOutError.Create("File cannot be copied into itself");
end;

Я ей фильмы/клипы копирую с компов



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

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

Наверх




Память: 0.47 MB
Время: 0.009 c
3-22555
Turalyon
2002-03-15 15:15
2002.04.08
Сервисы и IB


7-22865
MystiX
2002-01-08 12:25
2002.04.08
CD и Delphi


3-22569
Malder
2002-03-16 13:55
2002.04.08
Подсчет количества записей


1-22710
Aleksandr
2002-03-26 16:47
2002.04.08
Как корректно проверить наличие объекта в памяти?


14-22839
BJValentine
2002-02-25 10:40
2002.04.08
Help