Архівування файлів
Як за допомогою delphi архівувати файли? Якщо є компонент, підкажіть де взяти!
Невже ж ніхто не знає? Може хтось?
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;
memCmpStream.Position := 0; OutputFile.CopyFrom(memCmpStream, dtSize); finally . if Assigned(memStream) thenFreeAndNil(memStream); if Assigned(memCmpStream) then FreeAndNil(memCmpStream); if Assigned(cmpStream) then FreeAndNil(cmpStream); Cursor := SavedCursor;
Використовуй API функції виклику зовнішніх програм :) грубо кажучи виходить емуляція командного рядка,
що прикро не можу згадати назву функції, тож подивися в хелпах на тему "ExecuteProcess" або що схоже
До речі, приклад – то робітник.
а приклад просто чудовий.
Ось, доки сам не похвалиш, ніхто й не помітить!