Я пробовал много решений, и у меня были проблемы, этот работал.
Скачать https://github.com/zedalaye/d7zip
Скопируйте 7z.dll и sevenzip.pas в вашу директорию проекта и добавьте sevenzip.pas в ваш проект.
Тогда вы можете использовать это, чтобы распаковать:
using sevenzip;
procedure Unzip7zFile (zipFullFname:string);
var
outDir:string;
begin
with CreateInArchive(CLSID_CFormat7z) do
begin
OpenFile(zipFullFname);
outDir := ChangeFileExt(zipFullFname, '');
ForceDirectories (outDir);
ExtractTo(outDir);
end;
end;
Использование:
Unzip7zFile(ExtractFilePath(Application.ExeName) + 'STR_SI_FULL_1000420.7z');