Главная страница
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.023 c
1-41214
Ivolg
2003-10-28 12:17
2003.11.13
Заголовок окна!!!


3-40985
djon
2003-10-16 16:30
2003.11.13
Проблема с переносом приложения БД (Firebird) на другой компьютер


14-42030
Vintel
2003-10-16 11:04
2003.11.13
Почему-то не пашет!!!


4-42329
waw
2003-09-03 19:11
2003.11.13
Как использовать функции NetFileGetInfo и netFileEnum


1-41248
MaG
2003-10-31 21:42
2003.11.13
Файловая система