Support for archive scripting

akhon

New member
Hi,

The plugins for 7zip are very interesting. However, regarding some forensic or virtual machine fileformats it's impossible to support all extensions. But several authors provide command line (or CLI or DLLs) with some basic support for listing and extracting from these archive formats. So my suggestion is to create a new plugin called "Archive Scripting" with this functionality. Then the user could generate a "configuration" file with all the information to recognize, list and extract content from these files using calls to the scripts. Example:

- You want to manipulate VeeamZIP *.VBK files. This tool has the "extract.exe" tool. With it you can list Virtual Machines inside the .VBK file and extract them. In this particular case the only limitation is that you can't select individual files, only entire folder. But this is not a problem anyway.
- The user could write a python script that use the "extract.exe" tool to generate some CVS or JSON file with the "listing" content to pass it to the plugin. And another one that receives a file with the same format (CVS or JSON or whatever you prefer) that includes the list of files to extract for the archive plus a destination folder.
- And with a configuration file including "file-extension=VBK" plus "lister=lister-vbk.py" and "extract=extract-vbk.py" it will be sufficient to enable the functionality.

What you think about this scriptable method to support other fileformats using external extraction tools?
 

Dec

Administrator
Staff member
Very serious overhead. I don't like this idea.

I can add support for some additional formats if you provide me format specifications.
 

akhon

New member
Hi Dec,

I agree, it's a huge challenge. However perhaps you can do something similar in a different way: one Total Commander plugin called MultiArc does the same. And one implementation of it exists for Double Commander too. Perhaps you could reimplement this plugin (the source code is available) as a 7zip plugin. Check it at: https://totalcmd.net/plugring/MultiArc2012.html
 

Dec

Administrator
Staff member
There is a very big difference in the architecture of plugins for 7Zip and plugins for TotalCommander. Plugins for TotalCommander have access to physical files on the disk. Plugins for 7Zip do not have such access, they work with data streams. In order to transfer a file from the 7Zip plugin to an external handler, you must first save the stream transferred to 7Zip to a file.

Very serious overhead. I don't like this idea.
 
Top