Drop aus Archiv

04/10/2007 - 13:09 von Donald Lessau | Report spam
Hallo,

wenn ich aus einem per Explorer geöffneten Zip-Archiv (also per
zipfldr.dll-Zip-Handling) eine Datei in mein Fenster dragge und droppe, dann
kommt im Data (As DataObject) im OLEDragOver-Ereignis nichts brauchbares an,
was mir erlauben würde, die gedraggte Datei in irgendeinen Zielordner zu
kopieren (nebst Extraktion, die dann Explorer für mich automatisch
übernehmen sollte). Das DataObject enthàlt weder Dateien (vbCFFiles) noch
Text (vbCFText). Hm. Ich gehe mal davon aus, das Explorer für solch eine
Aktion die gewünschte Datei temporàr extrahiert -- aber da wüsste ich gerne,
wo ich die dann finde... wieso verschweigt er mir das?

Danke für gute Ideen!

Donald
 

Lesen sie die antworten

#1 Timo Kunze
04/10/2007 - 19:49 | Warnen spam
Es gibt da ein Tool namens ClipSpy. Auf dieses ziehst Du die Datei drauf
und es zeigt Dir alle Formate an, die das DataObject so bietet.
Bei mir sind das für Daten aus ZIP-Dateien nur die Formate
FileGroupDescriptorW und FileContents.
Such mal im Windows SDK nach FileGroupDescriptor, in diesem Format
müsste der Dateiname abgelegt sein. FileContents enthàlt vermutlich den
Dateiinhalt als Stream. Wahrscheinlich brauchst Du nur den Stream lesen
und das Ergebnis in eine Datei schreiben; ich vermute die Daten werden
dabei automatisch on the fly dekomprimiert.

Timo
www.TimoSoft-Software.de - Unicode controls for VB6
"Those who sacrifice freedom for safety deserve neither."

Ähnliche fragen