Главная страница
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.063 c
4-42238
Dmitry V. Averuanov
2003-09-17 11:12
2003.11.13
Как запустить свою программу как сервис NT


14-41967
Думкин
2003-10-10 05:09
2003.11.13
С днем рождения! 10 октября.


11-41130
ABM
2003-02-17 20:56
2003.11.13
<b>!!!! Ужас !!! KOLEDB, TQuery. Out of Memory !</b>


3-40957
gds
2003-10-16 17:12
2003.11.13
Что не так ?


9-40780
_0$a_
2003-05-06 22:42
2003.11.13
помогите Советом