Einzelnen Beitrag anzeigen

Benutzerbild von sieppl
sieppl

Registriert seit: 15. Aug 2004
Ort: Münster
198 Beiträge
 
Delphi 7 Professional
 
#2

Re: Dateien aus virtuellen Ordnern kopieren

  Alt 4. Sep 2004, 10:31
da meine Fragen anscheinend zu 'abgefahren' sind, antworte ich mal wieder selbst auf meine frage.
Es hat mich ca. 2 tage gekostet, eine Lösung zu finden:

Hier der Link der mich auf den richtigen Pfad geführt hat:
Netez Windows Api Tipps
Das ist zwar für C++, aber sollte ja kein Problem darstellen..

Da virtuelle Ordner keine richtigen System-Pfade haben, musste ich ein bisschen tricksen um die Dateien zu kopieren. In diesem Beispiel von einem virtuellen Kamera-Folder. Man müsste auf eigentlich auf die WIA-Schnittstelle zugreifen, aber das wäre noch komplexer gewesen, da es dazu kaum Delphi-Code gibt und die Libs noch nicht übersetzt sind. (Zumindest habe ich es nicht gefunden.)

Man parst sich also schon brav mit IShell-Folder Befehlen zu den Dateien der Begierde, setzt auf diese ein GetUIObjectOf um ein IContectMenu-Interface zu erhalten. Auf diesem Interface führt man nun den Befehl InvokeCommand mit 'copy' aus und verchiebt die Elemente so in die Zwischenablage. Am gewünschten Zielordner wird auch wieder ein IContextMenu::InvokeCOmmand aufgerufen, aber diesmal mit 'paste'. Hurra, die Dateien sind kopiert. Die Bilder von der Kamera liegen übrigens nicht im CF_HDROP Format im Clipboard, da selbst Windows intern das Kopieren über die WIA-Schnittstelle macht.

Ich würde mich sehr über ein Feedback freuen und noch mehr über eine elegantere Lösung zum Kopieren aus virtuellen Ordnern.
Sebastian
  Mit Zitat antworten Zitat