Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Virtuelles Dateisystem mit Zugriff durch andere Anwendungen (https://www.delphipraxis.net/176827-virtuelles-dateisystem-mit-zugriff-durch-andere-anwendungen.html)

sh17 29. Sep 2013 10:34

Datenbank: VDS • Version: x • Zugriff über: x

Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Ich habe es mal in Datenbanken gepackt, passt fast hier hin.

Ich suche eine Möglichkeit, wo ich Dateien eines Anwenders passend zum Thema in einen Container stecke und diese dort drin verwalte, eben ein Virtuelles Dateisystem.
Davon gibt es ja nun ne "Menge" am Markt und auch freie Sachen. Mit eigenen Dokumenttypen ist das alles kein Problem, die kann ich direkt im Stream bearbeiten.

Meine Frage nun, kennt jemand ein Exemplar, was so genutzt werden kann, das auch andere Programme Zugriff auf diese Dateien haben. Z.b. wenn der Anwender eine Excel-Datei in den Container steckt, das Excel diese Datei auch direkt bearbeiten kann? Irgendwie müsste das ganze ja dann in das Windows-Dateisystem eingebunden werden. Oder gibt es noch andere Möglichkeiten?

Zacherl 29. Sep 2013 10:51

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Zitat:

Zitat von sh17 (Beitrag 1230242)
Irgendwie müsste das ganze ja dann in das Windows-Dateisystem eingebunden werden. Oder gibt es noch andere Möglichkeiten?

Eine fertige Möglichkeit ist mir nicht bekannt, aber selber basteln müsste möglich sein. Die saubere und vermutlich auch komplexere Lösung ist ein eigener File System Driver, wie ihn z.b. TrueCrypt verwendet, um verschlüsselte Container in Windows einzubinden.

Alternativ würde es auch über API Hooks funktionieren. Da müsstest du alle Funktionen zum Enumerieren (FindFirst / FindNext, etc) und Modifizieren (CreateFile, ReadFile, WriteFile, etc) von Dateien hooken.

mquadrat 30. Sep 2013 08:58

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Wir machen das über WebDAV. Du stellst dein virtuelles Dateisystem per WebDAV zur Verfügung und mountest das dann im Explorer als Web-Laufwerk. Und schon kann jede beliebige Anwendung drauf zugreifen.

sh17 30. Sep 2013 11:08

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Das ist ne gute idee,danke

Macht ihr das mit Delphi? Selbst gebaut? Zugekauft?

Morphie 30. Sep 2013 11:20

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Oder du nimmst als Container eine iso-Datei? Die kann Windows ja automatisch per Doppelklick mounten... (zumindest moderne Windosen)

Zacherl 30. Sep 2013 11:44

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Zitat:

Zitat von Morphie (Beitrag 1230343)
Oder du nimmst als Container eine iso-Datei? Die kann Windows ja automatisch per Doppelklick mounten... (zumindest moderne Windosen)

Ist dann allerdings read-only.

sh17 30. Sep 2013 11:52

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Was ist vom virtual disk service zu halten?

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx

generic 2. Okt 2013 10:31

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Klingt alles sehr kompliziert.
Der Explorer, hat natürlich passende Schnittstellen.

Mit ShellPlus lässt sich so etwas schnell programmieren.
Alternativ geht es auch per Hand via Namespace/Shellextensions.

Dauert nur viel viel länger.

Was du bauen könntest, wäre etwas ähnliches wie die ZIP-Ordner unter Windows.

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx

mquadrat 2. Okt 2013 16:31

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Zitat:

Zitat von sh17 (Beitrag 1230341)
Das ist ne gute idee,danke

Macht ihr das mit Delphi? Selbst gebaut? Zugekauft?

Bis jetzt nur mit PHP realisiert. Aber das Protokoll ist eigentlich gut dokumentiert. Sollte also auch über einen Delphi-Dienst gangbar sein.

himitsu 2. Okt 2013 17:08

AW: Virtuelles Dateisystem mit Zugriff durch andere Anwendungen
 
Man kann selber einen WebDAV-Server, einen FTP-Server oder notfalls einen HTTP-Server aufsetzen (für FTP und HTTP hat Delphi gleich was dabei => Indy),
welches dann intern die Dateien dann dahin speichert/umleitet, wo man es möchte.

Bei HTTP natürlich nur mit Lesezugriff und ohne einen direkten Verzeichnisinhalt. (also ohne daß die Programme dann den Verzeichnisinhalt z.B. aus einer XML, HTML usw. selber auslesen müssen).

FTP und WebDAV kann man als "Laufwerke" in Windows und Co. einbinden, so daß man es sogar im Datei-Explorer und den Datei-Öffnen-Dialogen sieht.
Für FTP und WebDAV muß man auch nichts erst noch was ins Windows integrieren, da diese Unterschtützungen schon vorhanden sind.



Schade, daß es den Virtual Disk Service nicht schon früher gab. (ab Win8)


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:32 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz