使用Delphi创建压缩(Zipped)文件夹

10 delphi zip winapi winzip compressed-folder

我可以使用Delphi创建Windows XP的压缩(Zipped)文件夹吗?

Fab*_*mes 15

如果您使用的是Delphi X2,只需使用System.Zip中的TZipFile:

要压缩文件夹,请使用:

TZipFile.ZipDirectoryContents('ZipFile.zip', 'C:\Zip\this\right\now');
Run Code Online (Sandbox Code Playgroud)

要Zip文件,请使用:

Zip := TZipFile.Create;
try
  Zip.Open('ZipFile.zip', zmWrite);

  Zip.Add('FileToBeZipped.txt');
  Zip.Add('ThisWillBeCompressedAgainForSureAndBecomeSmaller.zip');
finally
  Zip.Free;
end
Run Code Online (Sandbox Code Playgroud)


Eug*_*ota 5

根据线程eggheadcafe,您可以使用CreateFile函数FILE_FLAG_BACKUP_SEMANTICS创建压缩文件夹.

对于shell扩展路由,请查看使用Windows XP"压缩文件夹"shell扩展来使用 Namespace Edanmo编写的.zip文件,该文件是用VB编写的.

我刚刚在C++上发现了类似的问题.请参阅使用C/C++在Windows(XP/2003)上创建ZIP文件.我有一种感觉,最简单的方法是购买ZipForge.请参阅在Delphi代码示例中压缩文件.