Tüm Platformlar için Hızlı Uygulama Geliştirme --->    Kitabımız...      Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Bulunduğu Klasörü Arşivleme
#1
Merhabalar, 
Köşede bulunsun lazım olur Smile

Exe'nin çalıştığı klasördeki dosya ve klasörü zip'ler.


uses
  System.IOUtils, System.Zip;
 
var
  Zip: TZipFile;
 Path    : String;
 SR      : TSearchRec;
 LFile: string;
 LZFile: string;
 LPath: string;
begin
  Zip := TZipFile.Create;
   try
     Zip.OnProgress := ZipOnProgress; 
     Zip.Open(ZipName, zmWrite);
     LPath := System.SysUtils.IncludeTrailingPathDelimiter(ExtractFileDir (Application.ExeName));
       for LFile in TDirectory.GetFiles(ExtractFileDir (Application.ExeName), '*', TSearchOption.soAllDirectories) do
         begin
            {$IFDEF MSWINDOWS}
              LZFile := StringReplace(Copy(LFile, Length(LPath) + 1, Length(LFile)), '\', '/', [rfReplaceAll]);
            {$ELSE}
              LZFile := Copy(LFile, Length(LPath) + 1, Length(LFile));
            {$ENDIF MSWINDOWS}
             if (LZFile <> ZipName) and (LZFile <> ExtractFileName(Application.ExeName)) then
             begin
                 Zip.Add(LFile, LZFile);
                 Memo1.Lines.Add('Arşivleniyor.. '+ LFile);
                 Application.ProcessMessages;
             end;
         end;
   finally
     Zip.Free;
   end;
end;

procedure ZipOnProgress(Sender: TObject; FileName:String; Heder: TzipHeader;Position: Int64);
begin
    Label1.Caption := inttostr(Position);
end;


Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Kuvvete dayanamayan adalet aciz, 
Adalete dayanamayan kuvvet zalimdir.
WWW
Cevapla

Konuyu Paylaş : facebook gplus twitter





Konuyu Okuyanlar: 1 Ziyaretçi