6

An application I use, Mozy Backup, adds its own "drive" to Windows Explorer that I can browse and view all the files I've backed up. Windows knows it's not a physical drive - it's shows up under "Other" if my drive list is divided by type.

How is a "drive" like this registered with explorer? I'd like to do this with a current .NET application I'm developing, but I can't find any explanation about how it's done. Also, I can't seem to find any documentation about making my application "browsable", meaning that it presents a similar interface that a user can browse folders and files.

Here is a screenshot of what I'm talking about:
Example of Mozy drive

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
SqlRyan
  • 33,116
  • 33
  • 114
  • 199

3 Answers3

3

You are out - sorry. Not possible with a .NET application IIRC - this is driver level work, which means C++. What you basicalyl do is provide a proper driver for that, which the operating system then can connect to.

What you CAN do is expose stuff on a website supportin Web-DAV (which you can do in ASP.NET ergo .NET) and then the user can connect this via explorer (which supports connecting to a WebDAV data container).

TomTom
  • 61,059
  • 10
  • 88
  • 148
2

It is not registered with explorer. It is an operating system registration. What you do is write a device driver for windows that gets installed on the local system and looks to windows like a disk drive device. Instead of interfacing with some hardware (a physical device) your driver interfaces with something virtual (however, windows does not need to know this, it looks like a regular disk drive to windows).

You can find out more about writing device drivers here:

http://www.microsoft.com/whdc/driver/foundation/default.mspx

and here

http://msdn.microsoft.com/en-us/library/ms809956.aspx

Hogan
  • 69,564
  • 10
  • 76
  • 117
  • Hmmm - that appears to be way out of my class, but it's interesting to know how Windows does it. I suppose Windows doesn't care that it's not a physical disk, just like it doesn't know that "CloneDrive" isn't a real DVD drive, since it looks and acts like it is. Thanks for the links - I appreciate you pointing me in the right direction, if only so I can realize that it's beyond my skillset... :) – SqlRyan Mar 11 '10 at 15:07
  • You welcome. I've not looked, but there might be some open source projects that expose the functionality you want -- it might be worth it to dig a little and see if there is something "almost" doing what you need that has already been written. – Hogan Mar 11 '10 at 15:25
  • The client application already allows users to "Browse" the contents, and I thought Explorer integration like this would be a nice feature for users. Since what they have now works, it's not a big deal. – SqlRyan Mar 11 '10 at 15:31
0

You can do this using Namespace Extensions.

They are a pain and time-consuming to develop and get right, so you might want to take a look at EZNamespaceExtensions.Net which eases things a lot.

logicnp
  • 5,796
  • 1
  • 28
  • 32