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

Вниз

Архивирование файлов   Найти похожие ветки 

 
adif   (2003-10-28 14:42) [0]

Как с помощью delphi архивировать файлы? Если есть компонент, то подскажите где взять!


 
adif   (2003-10-28 14:48) [1]

Неужели никто не знает? Может кто нибудь?


 
Малиновский Владимир   (2003-10-28 14:52) [2]

uses ...Zlib;

procedure ExportToZStrem(OutputFile: TFileStream);
var
i : integer;
dtSize : Integer;
currPosition : Integer;
cmpStream : TCompressionStream;
memStream : TMemoryStream;
memCmpStream : TMemoryStream;
SavedCursor : TCursor;
begin
...
memStream := TMemoryStream.Create;
memCmpStream := TMemoryStream.Create;
cmpStream := TCompressionStream.Create(clMax, memCmpStream);
SavedCursor := Cursor;
Cursor := crSQLWait;

try
... // Что-то как - нибудь записали в memStream
memStream.Write("Всем привет!",SizeOf("Всем привет!"));
memStream.Position := 0;

cmpStream.CopyFrom(memStream, memStream.Size); // Сжать и в файл
FreeAndNil(cmpStream); // Для освобождения буфера сжатого потока и
// правильного его позиционирования
dtSize := memCmpStream.Size;

OutputFile.Write(dtSize, SizeOf(dtSize));

memCmpStream.Position := 0;
OutputFile.CopyFrom(memCmpStream, dtSize);
finally
...
if Assigned(memStream) then FreeAndNil(memStream);
if Assigned(memCmpStream) then FreeAndNil(memCmpStream);
if Assigned(cmpStream) then FreeAndNil(cmpStream);
Cursor := SavedCursor;

end;

end;

// Возможны варианты


 
npAKTuk ©   (2003-10-28 14:55) [3]

Используй API функции по вызову внешних программ :)
грубо говоря получается эмуляция командной строки,

что обидно не могу вспомнить название функции, так что посмотри в хэлпах на тему "ExecuteProcess" или что похожее


 
Малиновский Владимир   (2003-10-28 14:55) [4]

Кстати, пример - то рабочий...


 
npAKTuk ©   (2003-10-28 14:56) [5]

а пример просто великолепный!!!


 
Малиновский Владимир   (2003-10-28 15:07) [6]

Вот, пока сам не похвалишь, никто и не заметит!


 
Amoeba   (2003-10-28 15:55) [7]

www.torry.net



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

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

Наверх




Память: 0.48 MB
Время: 0.039 c
1-41248
MaG
2003-10-31 21:42
2003.11.13
Файловая система


3-40933
stud
2003-10-17 11:39
2003.11.13
события в файрберд


9-40761
Начинающий_программист
2003-05-05 11:47
2003.11.13
Послушайте!


3-40984
angel
2003-10-24 13:42
2003.11.13
код mde


6-41798
$h@dow
2003-09-19 16:05
2003.11.13
Как сделать экономный режим скачки?