views:

61

answers:

5

I was wondering if there was a way to make a *.dll that mounts archives in Windows without the need for installing drivers. I've tried mounting *.isos (and was successful), but I needed to install drivers, which was not something my intended audience wants to do (or can do). The other relevant alternatives were for Linux (fuse-zip) or dead projects (zipios++).

Something along the lines of this...http://mountziplibrary.codeplex.com/

Oh, and it'd be great if the solution was GPL v3'd or at least open source.

Thanks.

A: 

Maybe this one helps you: ZLib

InsertNickHere
Hm....zlib is for compression/decompression of *.zips - I can take care of that part. However, I'm looking more towards mounting/unmounting the archive to a drive (eg F:\\), sort of like what Daemon Tools/Alcohol 120% does with *.isos.
Juicebox360
Why downvote?! Oo
InsertNickHere
2 downvotes, no comment why. Great! This makes me feel like an idiot.
InsertNickHere
A: 

Have you looked at Dokan? It looks like a Windows equivalent to Fuse.

Jacob
Unfortunately, Dokan uses a driver as well (dokan.sys) (http://dokan-dev.net/en/docs/how-to-build-dokan-library/).
Juicebox360
A: 

What you're describing is called an Installable File System (IFS). It theory you don't need a driver: implement a SMB server in application space, and let the existing kernel network client talk to that. It's just TCP/IP at that level.

The proper solution is indeed an IFS driver. Fundamentally, drives are objects in the kernel namespace. As such, the code for them should be part of the kernel, and an application never is.

MSalters
A: 

There was a hobbyist project called WinFUSE once, which worked as an SMB server and redirected FS requests to your .NET code. But it's gone, as far as I know. Proper way is to use a driver-based approach. The driver can be installed and removed on-the-fly if the user has admin rights, and if he doesn't, installation of the application requires admin rights anyway. In Unix/Linux it's the same - you can't mount a disk (not saying about the driver now) if you are not an admin. Could I not mention that Callback File System is the only professional supported solution that lets you accomplish the task?

Eugene Mayevski 'EldoS Corp
A: 

I've decided to Google around for some answers.

One of particular interest was zziplib. It's for C and transparently accesses archives, just like Windows does, treating it as an actual folder.

Of course, the other implementations given by users work too. This one just fit the bill for me.

Juicebox360