Dateien aus virtuellen Ordnern/Digitalkamera kopieren
-
Hallo,
ich hoffe das Thema ist nicht halt, habe zumindest nichts finden können, was meinem Problem entspricht. Falls doch, bitte ich um einen 'Schubs' in die richtige Richtung.
Ich schreibe ein Programm, welches Diggi-Cams automatisch erkennt und deren Inhalt auf die Festplatte kopieren soll. Das Erkennen läuft schon super. Entweder eine Kamera wird als Volume gemountet und hat einen Laufwerksbuchstaben ODER als virtueller Ordner. (Kleines Kamerasymbol unter Arbeitsplatz). Im zweiten Fall befindet sich die Kamera dann unter 'Scanner und Kameras' in der Systemsteuerung.
Nun kann man ohne Probleme mit den IShellFolder-Befehlen bis zu den Bildern auf der Kamera vordringen, aber der daraus resultierende Pfad wird nicht von SHFileOperation angenommen um die Bilder zu kopieren.
Der aus 'GetDisplayName' resultierende Pfad sieht in etwa so aus:'::{GUID of my computer}\::{GUID of control panel}\::{GUID of scanners and camera\devid:{GUID of camera}\0003: \0003\Root\Ext0\DCIM\100Ricoh\picture1234.jpg'Im Windows-Explorer dagegen wird dagegen nur 'Scanner und Kameras'\'Kameraname'\DCIM\100RIcoh\'alle Bilder' angezeigt. Wenn man im Windows-Explorer die Bilder per Drag&Drop kopiert wird auch der ordinäre Windows-Kopier-Vorgang gestartet. Das muss man doch hinbekommen..
Ich habe bisher kein Forum gefunden, in dem jemand bescheid wusste. Wie muss ich an die Sache herangehen?
Ich bin für Hilfe überaus dankbar.Grüße
Sieppl
-
Kann sein das ich das falshc auffase aber wenn die Kamera als Volume mit einem Laufwerksbuchstaben gemountet werden kann, könnte man dann nicht simplerweises über den Luafwerksbuchstaben darauf zugreifen?
-
Es gibt ja 2 Möglichkeiten wie Kameras eingebunden werden:
1. als Volume -> Kein Problem
2. als virtuelles Laufwerk -> Bezug des Beitragszu 2.: häufig unter windows xp bei bestimmten marken (Canon,Ricoh), es kommt darauf an, ob der Treiber dementsprechend ausgelegt ist
-
Du könntest zum Testen einfach mal ein Bild über GetOpenFileName auswählen und dann schauen, wie dieser Pfad aussieht - evtl. klappt es ja damit

-
hi flenders,
etwas ähnliches habe ich schon probiert. Das wird nicht klappen.Selbst Windows legt die Bilder wenn man Rechts-KLick und Kopieren wählt, nicht als CF_HDROP im Clipboard ab. Ich habe es jetzt geschafft ein Bild über das IContextMenu zu kopieren. Ich bräuchte nur eine Anleitung, wie ich mir so eine PIDL:
apidl
[in] Address of an array of pointers to ITEMIDLIST structures, each of which uniquely identifies a file object or subfolder relative to the parent folder. Each item identifier list must contain exactly one SHITEMID structure followed by a terminating zero.zusammenbauen kann. Und zwar sukzessive beim Durchlaufen des Ordners. Dann könnte ich alle Dateien auf einmal via Clipboard kopieren. Schön Windows die Arbeit machen lassen.

Grüße
Sieppl