2010-03-11 9 views
6

Un'applicazione che uso, Mozy Backup, aggiunge il proprio "disco" a Esplora risorse di Windows che è possibile sfogliare e visualizzare tutti i file di cui è stato eseguito il backup. Windows sa che non è un disco fisico: si presenta sotto "Altro" se il mio elenco di unità è diviso per tipo.Aggiunta di un "fake drive" a Windows Explorer

In che modo un "disco" come questo è registrato con explorer? Mi piacerebbe farlo con un'applicazione .NET corrente che sto sviluppando, ma non riesco a trovare alcuna spiegazione su come è stata eseguita. Inoltre, non riesco a trovare alcuna documentazione su come rendere la mia applicazione "sfogliabile", nel senso che presenta un'interfaccia simile che un utente può sfogliare cartelle e file.

Ecco uno screenshot di quello che sto parlando:
Example of Mozy drive

+0

simile: http://stackoverflow.com/questions/3948505/how-to-mimic-a-drive-in-windows –

risposta

2

Non è registrato con explorer. È una registrazione del sistema operativo. Quello che fai è scrivere un driver di dispositivo per Windows che viene installato sul sistema locale e guarda a Windows come un dispositivo di unità disco. Invece di interfacciare con un certo hardware (un dispositivo fisico) il tuo driver si interfaccia con qualcosa di virtuale (tuttavia, Windows non ha bisogno di saperlo, sembra una normale unità disco di Windows).

È possibile saperne di più sulla scrittura di driver di periferica qui:

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

e qui

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

+0

Hmmm - che sembra essere fuori dalla mia classe, ma è interessante sapere come Windows lo fa Suppongo che Windows non tenga conto che non è un disco fisico, proprio come non sa che "CloneDrive" non è un vero lettore DVD, dal momento che sembra e si comporta come se fosse. Grazie per i link. Apprezzo che tu mi abbia indirizzato nella giusta direzione, se solo così posso capire che è al di là del mio skillset ... :) – SqlRyan

+0

Benvenuto. Non ho guardato, ma potrebbero esserci dei progetti open source che espongono la funzionalità che vuoi - potrebbe valere la pena di scavare un po 'e vedere se c'è qualcosa che "quasi" fa ciò di cui hai bisogno è già stato scritto. – Hogan

+0

L'applicazione client consente già agli utenti di "sfogliare" il contenuto e ho pensato che l'integrazione di Explorer come questa sarebbe stata una bella funzionalità per gli utenti. Dal momento che ciò che hanno ora funziona, non è un grosso problema. – SqlRyan

3

Siete fuori - mi dispiace. Non è possibile con un'applicazione IIRC di .NET. Si tratta di un lavoro a livello di driver, che significa C++. Quello che fai basicalyl è fornire un driver adatto a questo, a cui il sistema operativo può connettersi.

Ciò che si può fare è esporre materiale sul supporto di un sito Web in Web-DAV (che è possibile fare in ASP.NET ergo .NET) e quindi l'utente può collegarlo tramite explorer (che supporta la connessione a un contenitore di dati WebDAV) .

Problemi correlati