Просмотр исходного кода

使用Zip进行压缩时,不使用临时文件做中转

MaiXinRong 8 лет назад
Родитель
Сommit
255ec671e9
1 измененных файлов с 17 добавлено и 0 удалено
  1. 17 0
      Units/UtilMethods.pas

+ 17 - 0
Units/UtilMethods.pas

@@ -887,6 +887,22 @@ var
   vZip: TVCLZip;
   iCount: Integer;
 begin
+  vZip := TVCLZip.Create(nil);
+  iCount := 0;
+  try
+    vZip.FilesList.Clear;
+    vzip.RootDir := AFileFolder;
+    vZip.ZipName := AFileName;
+    vZip.OverwriteMode := Always;
+    //vZip.AddDirEntriesOnRecurse:=True;
+    vZip.RelativePaths := True;
+    //vZip.RecreateDirs := True;
+    vZip.FilesList.Add(AFileFolder + '\*.*');
+    vZip.Zip;
+  finally
+    vZip.Free;
+  end;
+  (*
   sTempFile := GetTempFileName;
   vZip := TVCLZip.Create(nil);
   iCount := 0;
@@ -911,6 +927,7 @@ begin
     if FileExists(sTempFile) then
       DeleteFile(sTempFile);
   end;
+  *)
 end;
 
 function UnZipFile(AFileName, AFileFolder: string): Boolean;