Entwickler-Ecke

Open Source Units - TRecycleBin


ASMFreak - Mo 28.06.10 18:10
Titel: TRecycleBin
Hallo,

aktiv bin ich neu hier :oops: , auch wenn ich bereits häufig dieses Forum besucht habe. Ich bitte daher um Entschuldigung, sollte ich etwas falsch machen. Aber ich bin lernfähig!

Im Rahmen eines Projektes hatte ich eine Aufgabenstellung, die mich veranlasste, eine Unit mit einer Klasse zu schreiben, die vielleicht für Einige von Euch interessant sein könnte. Und da ich von meinen bisherigen Besuchen bei Euch schon profitieren konnte, möchte ich mich heute mit dieser Unit revanchieren.

Es dreht sich um die Ansprache des RecycleBins aus einer Apllikation heraus. Recyceln ist ja selbst nicht so wahnsinnig schwierig, doch das Wiederherstellen ist nicht trivial - zumindest habe ich im Netz nicht so furchtbar viele gute Ansätze gefunden.

Anbei also die Unit, ich hoffe, sie bringt dem einen oder anderen etwas. Ich denke, sie ist ausreichend kommentiert, für den einen oder anderen vielleicht zu viel! Aber es steht ja jedem frei, darüber hinwegzulesen.

Wer sich mit ihr beschäftigt, wird feststellen, dass ich ein, zwei kleine Problemchen angesprochen habe, die eventuell noch verbesserungswürdig sind. Vielleicht hat ja jemand eine Idee.

Gruß


Moderiert von user profile iconNarses: Topic aus Sonstiges (Delphi) verschoben am Mo 28.06.2010 um 23:11


markus5766h - Mo 09.05.11 20:15

:zustimm:


jaevencooler - Di 10.05.11 09:31

:zustimm: Klasse Arbeit.....

Sauber dokumentiert, und funktioniert auch !!!!


Beste Grüße
Michael


Aya - Di 10.05.11 16:15

Hi,

hab es mir mal angeschaut, funktioniert alles wunderbar bis auf "Ausschneiden", "Wiederherstellen" und "Löschen".

Hab mal eine runde rumgetestet und es scheint an InvokeCommand zu liegen. Das liefert zwar keine fehlermeldung zurück (also
CtxMenu.InvokeCommand(CmdInfo); gibt 0 zurück), aber es macht auch nichts.

Ich habe mir mal CmdStr ausgeben lassen, dort gibt es nur "cut", "delete" und "properties". Ein "undelete" gibt es garnicht..

Nutze hier WinXP 64bit SP2


Allerdings finde ich den ansatz das ContextMenü vom Explorer zu "missbrauchen" auch etwas unschön.
Du hast doch die Original pfade und die aktuellen pfade.. beim wiederherstellen mußt du die datei ja einfach nur zurück verschieben, beim delete eben löschen und beim cut eben die datei via WinAPI in das clipboard packen.

Oder hat der RecycleBin es nicht gerne wenn man einfach so von hand dateien darin löscht oder verschiebt? (Also auf C:\RECYCLER\...)

Aya~


Sinspin - Di 10.05.11 18:06

user profile iconAya hat folgendes geschrieben Zum zitierten Posting springen:
hab es mir mal angeschaut, funktioniert alles wunderbar bis auf "Ausschneiden", "Wiederherstellen" und "Löschen".

Kann ich leider nur bestätigen. Getestet mit WinXP 32Bit, SP4, Adminuser.


markus5766h - Di 10.05.11 19:06

unter Win7 Ultimate 64-bit keine funktionellen Probleme,
lediglich beim Markieren aller Objekte im Fenster und
anschließendem Wiederherstellen wird aus irgendeinem Grund
(hatte noch nicht die Zeit, genauer nachzuschauen) die Schleife
unterbrochen, so dass nur ein Teil abgearbeitet wird.
Habe diese Test einige Male durchlaufen lassen, der Abbruchzeitpunkt
scheint ein Zufallsprodukt zu sein - sollte aber zu lösen sein.