如何通过JEDI的JCLCompression在Delphi中高效创建7z压缩存档?
- 内容介绍
- 文章标签
- 相关推荐
本文共计237个文字,预计阅读时间需要1分钟。
我正在尝试使用Delphi 2009创建一些7z存档文件。下面的代码看似正确,但生成的7z文件中所有项目都是零大小。存档中的所有文件名都是正确的,但它们不应为零大小。如何使用JCLCompress解决这个问题?
我正在尝试使用Delphi 2009创建某些文件的7z存档.下面的代码似乎工作,但生成的7z文件中的所有项目都是零大小.存档中的所有文件名都是正确的,但它们不应为零大小.
如何使用JCLCompression将文件正确添加到7z存档?
var fname, archiveFileName: string; arch: TJclUpdateArchive; archiveclass: TJCLUpdateArchiveClass; sr: TSearchRec; begin fname := GetDesktop + 'Support.7z'; archiveclass := GetArchiveFormats.FindUpdateFormat(fname); if not Assigned(archiveclass) then raise Exception.Create('Could not determine the Format of ' + fname); arch := archiveclass.Create(fname); try with arch do begin if FindFirst(uFolder + '*.*', faAnyFile, sr) = 0 then begin repeat AddFile(ExtractFileName(sr.Name), sr.Name); until FindNext(sr) <> 0; FindClose(sr); end; Compress; end; finally arch.free; end; end; 永远不会,因为JCLCompression,我的回答可能完全错误,但是你不必在某个地方指定文件夹吗?您只是添加文件名.
本文共计237个文字,预计阅读时间需要1分钟。
我正在尝试使用Delphi 2009创建一些7z存档文件。下面的代码看似正确,但生成的7z文件中所有项目都是零大小。存档中的所有文件名都是正确的,但它们不应为零大小。如何使用JCLCompress解决这个问题?
我正在尝试使用Delphi 2009创建某些文件的7z存档.下面的代码似乎工作,但生成的7z文件中的所有项目都是零大小.存档中的所有文件名都是正确的,但它们不应为零大小.
如何使用JCLCompression将文件正确添加到7z存档?
var fname, archiveFileName: string; arch: TJclUpdateArchive; archiveclass: TJCLUpdateArchiveClass; sr: TSearchRec; begin fname := GetDesktop + 'Support.7z'; archiveclass := GetArchiveFormats.FindUpdateFormat(fname); if not Assigned(archiveclass) then raise Exception.Create('Could not determine the Format of ' + fname); arch := archiveclass.Create(fname); try with arch do begin if FindFirst(uFolder + '*.*', faAnyFile, sr) = 0 then begin repeat AddFile(ExtractFileName(sr.Name), sr.Name); until FindNext(sr) <> 0; FindClose(sr); end; Compress; end; finally arch.free; end; end; 永远不会,因为JCLCompression,我的回答可能完全错误,但是你不必在某个地方指定文件夹吗?您只是添加文件名.

