FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   Archiver, 7z Alternative and FreeArc Replacement (https://fileforums.com/showthread.php?t=106832)

Dunnowho69 24-04-2026 08:30

Is it fully compatible with inno yet ? Would be great if you could upload a sample inno script with full integration and as well as how to replace freearc with archiver in existing inno scripts :D

panker1992 25-04-2026 07:31

Quote:

Originally Posted by Dunnowho69 (Post 509930)
Is it fully compatible with inno yet ? Would be great if you could upload a sample inno script with full integration and as well as how to replace freearc with archiver in existing inno scripts :D

I am working on it, rest assured, i have however provided a Setup.exe in Delphi

which i use myself. unarc.dll both 32 bit and 64 are working but i havent tested them in Inno yet.

Added this tool which is a reflection of the internal precomp archiver uses but in external way,
This is an Xtool 7.9 Fork, which i created and maintain for my archiver.

Several fixes that have happened on top of Razor's Xtool work:
gdeflate original is kept as it was.
gdeflate2 is now present and also libgdeflate is also there, Razor provided those
as a courtesy because i helped him with libgdeflate. thanks Brother.
packmp3 is new addition which is now able to detect mp3 streams. and process them.
packjpg bug fixes
zstd codec patched to work.
zlib patched to work without zlibwapi.dll
All external DLLs are now in liblzma.dll
Including brunsli,packmp3,packjpg and many others.

Usage: precomp.exe c/d [params]
Release Version: 1.0.0

Main Options:
h Print Help

c <input> <output> Compress

:c - Codec(s) for precompression, multiple allowed:
preflate, reflate,zlib,lz4,zstd,kraken,lzo,png,brunsli,flac, packjpg,packmp3,gdeflate,gdeflate2,libgdeflate
Example: :czlib:creflate:czstd
:b - Block Size in MB [Min: 4, Default: 32]
:t - Thread count, e.g. :t50p = 50% of system cores [Default: :t50p]
:d - Depth (1 or 2) [Default: 1]
PNG requires :d2 and Preflate to function properly
:dd - Enables block deduplication on the current job
:db - Enables internal deduplication database

d <input> <output> Decompress

panker1992 29-04-2026 12:57

Precomp 1.0.1
Fixed liblzma.dll by removing everything it didn't need.
fixed a case where instead of using oo2core_x_dll it used liblmza.dll
it now uses internal patch engine instead of zstd

panker1992 06-05-2026 11:57

Complete refactoring.

Known Cases Future Fix maybe:
32bit executable uses 64bit placeholders, originally a 32 bit wasn't in the plans. this is a future fix.
New code for delphi lzma2/lzma/xz/7z is added via sdk 26.01. Possibility of adding it.

Bugs - To Do list:
Bug: Brunsli Codec in Precomp, out of bound bugs, best replacement is jojpeg because packjpg is single threaded.
Bugs: New patching Engine, release 0.1, which will be replacing zstd one that is actually present.

Changes - WIP 7.3:
1) Introduced Packmp3 API, in a streaming precompressor codec, not a filtering technique previously used, usage: precomp:cpackmp3
2) Introduced jojpeg API, brunsli - packjpg replacement. usage: precomp:cjojpeg
3) Unarc.dll, precomp use external executables, to speed up the process and use dedicated RAM
4) liblzham is using now a streaming compressor <> hence this will break the compression compatibility if you used it before (!)
5) Fixed a bug that used internal liblzma.dll to precompress using oodle specific codecs. it will now look for an oo2core_x_win64.dll
6) ExecArray, works and testing seems promising.
7) Rework on parsing, multiple 4x4 and 4x1 is now able to be used, it now uses array of params instead of global params.
8) Rework on TDirInput, allows for multiple inputs, instead of one input it now uses array of Inputs
9) Refactoring, the entire Project is refactored to the point of rewriting major aspects,
Analysis: Rewrote the way it handles Inputs, collect entries, removed single file and added array of inputs, separated public variables.
added placeholders for future usage including 32bit, cleared complex funcions. Broke Compatibility badly!
10) New handler added "e" stands for external decompression via Unarc.dll, added for debugging, tired to use a small program to load unarc.dll all the time :P
11) The project is updated to use Rad Studio 13.1
12) ZSTD 1.5.7 added with multithreading capabilities, check encoders

panker1992 11-05-2026 11:25

SOS Upgrade if you use 7.3, critical bugs have been found and fixed

Changes - WIP 7.4:
SOS!!!
1) a critical bug in header creation was fixed
2) a critical bug was fixed that didnt verify files on decoding, on some occasions that led to corruption
3) a memory leak that occured rarely in compression succession.

KaktoR 03-06-2026 09:53

--span=<size> option does not work it seems.

panker1992 08-06-2026 11:06

Milestone
 
Quote:

Originally Posted by KaktoR (Post 510237)
--span=<size> option does not work it seems.

As i told you in discord, at that time --span=10mb wasn't parsed, at this time it works with mb or gb prefixes

Important Note:
After 2 years of development, this project is reaching the END of adding new stuff, manipulating the Engine and optimizing the way it works.
As it's finilizing itself, i will begin to make a new GUI to make everyones life a bit easier.
The Next release will probably be the first Public Release making it to 0.0.1.
Also to make use of the previous release i plan to keep the WIP - Work in Progress Releases public for people that used it.

panker1992 05-08-2026 12:18

inno + archiver are fianlly married

thanks to Razor we got ourselves a testing kit :)

Also the archiver.exe inside the example can support srep natively

-msrep:m1 = m3f
-msrep:m2 = m4f
-msrep:m3 = m5f

panker1992 07-08-2026 15:21

Alpha version is out.
Changelog:

1) Fixed Visual Bugs in Precomp
2) Fixed packmp3, in LibGUI
3) Native Srep, algorithm has been added.
4) Several QOL changes and micro optimizations.
5) Silent Addition to enable usage of archiver_api to be used to compress via executable for debug purposes.
6) Inno Example has been created.

panker1992 28-08-2026 09:56

Archiver, a new archiving project

Changes - 0.0.2: Beta

Bug Fixes & Stability


Fixed Visual Bugs in Precomp - Resolved display and rendering issues within the Precomp interface
Fixed packmp3 in LibGUI - Addressed MP3 packing functionality within the GUI library
Fixed foxshellDLL crashes - Resolved critical stability issues in the shell extension DLL


New Features & Enhancements


Native Alternative to Srep - Created ADDeX as a native external tool alternative
WAVPACK Method Added - New compression method for WAV audio files
Silent Addition for API - Enabled archiver_api usage for compression via executable (debug purposes)
Inno Example Created - Added Inno Setup example for installer reference


Native Delphi Ports


Brunsli - Now implemented as native Delphi port
PackJPG - Now implemented as native Delphi port
PackMP3 - Now implemented as native Delphi port
Preflate - Now implemented as native Delphi port


Optimizations & Quality of Life


Several QOL changes and micro optimizations - Various user experience improvements and performance tweaks
Further Precompression changes - Ongoing improvements for game engine enforcement compatibility


Inno Exampel has been added, i will be providing a LibGUI inno from Razor pretty soon

KaktoR 28-08-2026 16:38

This is a really good freearc replacement.

You people should give it a try.

Dunnowho69 28-08-2026 22:13

Can I use cls.ini like freearc for installation or is there a different way for this ?

panker1992 29-08-2026 01:55

The Cls.ini is a file that is loaded in CLS runtime, by the CLS itself, if the CLS supports it then yes you can use it,

for example lolz and lolzi supports it and you can use it,

CLS.ini isn't loaded in archiver, as archiver cannot know in advance what params each cls will use.

Dunnowho69 29-08-2026 03:13

Quote:

Originally Posted by panker1992 (Post 510817)
The Cls.ini is a file that is loaded in CLS runtime, by the CLS itself, if the CLS supports it then yes you can use it,

for example lolz and lolzi supports it and you can use it,

CLS.ini isn't loaded in archiver, as archiver cannot know in advance what params each cls will use.

Thanks for clarifying, also is there a way to exclude the parent folder since
Code:

Archiver.exe a test.arc "C:\test\*" -msrep -o+
doesn't work ?
Edit: found it my bad

panker1992 29-08-2026 07:44

To exclude the parent folder you need to use -rr=1 command this is very similar to what FA does as well,

the archiver project is primarily created to be used in windows, and as 7z alternative,
this is why i had to use this to avoid several naming collision on special folders


All times are GMT -7. The time now is 00:50.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com