0

Is there any possibility (driver, software, filesystem addon) to enable windows to handle archives like ordinary folders? so that any program that uses file API can access to data within archives like any other files too (without being explicitly enabled to support archives)?

For example if there is some archive at d:\somePath\myArchive.zip with content

readme.txt
someFolderInArchive/notes.txt

passing d:\somePath\myArchive.zip\readme.txt to any program should be resolved by the system to enable the program to read the file.

since at the end all file access is handled by the OS (at least if the program does not do filesystem handling on its own and reading at the block device level) it should in theory be possible to implement archive support on file API level rather than on application level.

Is there any support from Microsoft side or by other tools that can do this?

Ahmed Ashour
  • 2,350
  • 2
  • 14
  • 21
vlad_tepesch
  • 284
  • 3
  • 16
  • Why can't you just extract the zip file then run the program? Doing what you say is not a good idea as the whole zip would need to be copied for each file change. – user202729 Sep 17 '19 at 12:23
  • the data in the archives is not to meant to change very often. but it is quite large and are 10 thousands of small files that are difficult to handle – vlad_tepesch Sep 17 '19 at 14:19

4 Answers4

0

There is ZIP integration to a certain degree because the explorer has support for it. Due to the nature of zip files it's not easily possible to just "replace" or extend a file. So what you're looking for isn't possible for arbitrary compressed file formats.

What you could do is use NTFS compression. In which case the compression happens on a filesystem level.

Seth
  • 9,000
  • 1
  • 19
  • 34
  • since the use case is mostly read only a this drawback would not matter. also the used archive formats are not that important. – vlad_tepesch Sep 17 '19 at 14:00
  • @vlad_tepesch the new [LZX algorithm](https://theitbros.com/lzx-new-windows-10-ntfs-compression-algorithm/) added to NTFS is also for handling those read-only situations because no one overwrites system binary files except the OS itself. See [NTFS compressed folders: is it possible to tweak compression ratio?](https://superuser.com/a/1149911/241386) – phuclv Sep 17 '19 at 14:11
  • but compressed folders fulfill a slightly different use case. My usecase is easy deployability that is not the case with folders full with thousands of small files – vlad_tepesch Sep 17 '19 at 14:24
  • In that case use a VHD. Your use case is solved by that. Especially if you take the overhead other compression formats entail - even when just reading. Depending on the file format you will need to seek the whole file which is going to be even slower than just extracting them. You either need to be way, way more specific with what your requirements are or accept that what you want to do with such a rough outline isn't possible. In any case it won't work for every program and you will likely need to tailor an application for it. – Seth Sep 18 '19 at 08:52
0

Windows does not support that kind of address for zip-archive contents, so you need to look for third-party software. Since Microsoft has added zip support to Explorer, the number of such applications that are still updated is sharply reduced.

Below are some applications that can mount a zip archive as a virtual disk or folder (untested):

harrymc
  • 455,459
  • 31
  • 526
  • 924
-1

Double Commander is a dual pane file manager, which shows the contents of two directories. It is free, even for commercial use (and open source).

You choose which two directories to view.

Just as in Windows, you can treat a ZIP file (use plugins for other archive formats; I use .RAR & .ISO a few times per year, but .zip on a daily basis) as a directory.

When viewing the contents of the directory, you can :

  • view a file
  • edit a file
  • launch a file (I just an Excel spreadsheet), update it and save the result back into the archive
  • copy a file to/from the directory in the other pane; i.e copy a file from the archive or copy a new file into the archive
  • search the archive for file name or file contents
  • delete a file

You cannot, however, rename a file in the archive.

It is also possible to select one or more files in one pane and create an archive containing them in the directory shown in the other pane.

Archive handling, however, is the least of what DC an do; I urge you to try it - you won't use Windows Explorer again.

enter image description here

  • 2
    Sorry, but this is not an answer to the question, because DC does not allow *other* applications to read files from an archive. (If anything, this is a commercial for DC ;-) ) – Berend Sep 17 '19 at 14:56
  • there are a couple of free and better (or at least better fitting for me) file manager than TC - oh sorry, this is DC and not TC - but nevertheless - not an answer to the question – vlad_tepesch Sep 17 '19 at 18:43
  • For showing the file content and extract like that then any NC-like managers like Free Commander or Total Command have the the same capability. Even **Windows Explorer** can also do that. But to mount the archives as a file system for others to use you need a driver to mount them – phuclv Sep 18 '19 at 02:25
-3

Right click empty space on your Desktop. Choose:

New > compressed folder.

This will create a compressed folder on your desktop where any files moved into/out of it are auto compressed/decompressed. Said files can be opened normally. ie: Anything in the folder is as automatic/transparent as a good old NTFS compressed folder.

Now Rename the folder to whatever, keeping the .zip extension and move it wherever you want.

(Works a treat in flash/thumb drives (for compressible text and spreadsheet etc files) making the drive stinkingly fast and ~10x larger)

Simple really. Why didn't you just ask me directly in the 1st place?!
:D

EDIT: Sorry no; not quite as transparent: While a file in the compressed folder can be opened and edited/changed, it needs to be saved uncompressed elsewhere before being moved back into the compressed folder as the .zip 'folder' is seen as the file it actually is...

Robocopy may be a solution to this by auto moving files saved in another folder into the .zip 'folder' https://www.laptopmag.com/articles/automatically-move-files-one-folder-another-windows-10