gpt4 book ai didi

delphi - 最新 7z.dll 的 JEDI JclCompression 提取问题

转载 作者:行者123 更新时间:2023-12-03 15:53:48 29 4
gpt4 key购买 nike

我已将 JclCompression 与 32 位版本的 7z.dll 9.20 结合使用。很长一段时间以来,最近尝试升级到更新的版本( 16.04 )。随着 7z.dll 版本的更新,我无法提取 Bzip2 存档或 tarball (.tgz) 以及其他一些格式。 9.20 和 16.4 之间 7z.dll 是否发生了某些变化会导致此问题?

我还尝试了 9.38 和 15.14 中的 7z.dll,但遇到了同样的问题。

更多详细信息:

  • 德尔福XE3
  • JCL 2.8 测试版本 5677
  • 来自 7z1604.exe 的 7z.dll(32 位)
  • 我尝试过的任何 .bz2 文件都会出现以下错误:

First chance exception at $0040D523. Exception class $C0000094 with message 'integer divide by zero at 0x0040d523'.

Debug Output: Exception:Catastrophic failure Process myapp.exe (2400)

我已按照 this post 上的提取码进行操作。这是我的线程的提取过程,我在其中看到了错误:

procedure TExtractThread.Execute();
begin
if FArchive.ItemCount > 0 then
begin
FArchive.OnProgress := ArchiveProgress;
FExtractionError := False;
try
FArchive.ExtractAll(FOutputDir);
except on E: Exception do
begin
FExtractionError := True;
OutputDebugString(pchar('Exception:'+E.Message));
end;
end;
end;
end;

最佳答案

7zip 在 v9.20(2010)之后多年一直处于 alpha/beta 模式。第一个后续稳定版本是 V15.12(2015 年 11 月),它是在您使用的 JCL 版本发布几个月后发布的(2.8 测试版本 5677,2015 年 9 月)。支持 7z.dll 版本 15.14 was added Jan 3, 2016 。有does not seem to be any further updates checked in对于比这更新的 DLL 版本。如果您想使用较新版本的 7Zip,您可能应该将 JCL 更新到当前版本。

如果您不想测试 Beta 版或每日构建,则当前稳定的 JCL 版本 (V2.4.1) is distributed with 7z.dll version 9.22如果您比同时引入的任何新功能更需要可靠性,那么您应该坚持这一点。

关于delphi - 最新 7z.dll 的 JEDI JclCompression 提取问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45921881/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com