Statt dessen geschieht folgendes:
\TRASH
. (Sie k”nnen es sehen, wenn Sie auf der Befehlszeile DIR /A \
eingeben.)
D:\MYFILES\ARTICLES
befindet, wird das Verzeichnis D:\TRASH\MYFILES\ARTICLES
angelegt. Dadurch kann der Papierkorb sich erinnern, von wo das Objekt gel”scht wurde.
Der Grund hierfr ist einfach: Geschwindigkeit. Wrden wir Objekte physisch in den
Papierkorb-Ordner schieben, so wrden regelm„áig Dateien zwischen Laufwerken bewegt.
(Denken Sie nur einmal daran, eine Datei von 30MB auf diese Weise in den Papierkorb
zu verschieben.) Im Gegensatz dazu sollte, da das \TRASH
-Verzeichnis sich
immer auf demselben Laufwerk wie das Objekt befindet, sogar das Verschieben groáer
Ordnerb„ume sehr schnell vonstatten gehen.
Wird also ein Objekt in den Papierkorb verschoben, so wird es tats„chlich dupliziert:
das "echte" Objekt wird in den unsichtbaren Verzeichnisbaum \TRASH
verschoben,
und das "Papierkorbobjekt" (XFldTrashObject, Unterklasse von WPTransient) wird im Papierkorb
erzeugt.
\TRASH
durchsucht, und Papierkorbobjekte werden
entsprechend den in den Unterverzeichnissen enthaltenen Objekten angelegt.
\TRASH
-Verzeichnissen befindliche "echte" Objekt
dahin zurck verschoben, von wo es gel”scht wurde (oder an die Stelle, an die der Anwender es
verschoben hat), und das Papierkorbobjekt wird aus dem Papierkorb entfernt, da es keinen
Zweck mehr erfllt.
\TRASH
-Verzeichnissen entfernt als auch alle
Objekte im Papierkorb.
Die Verwendung einer Unterklasse von WPTransient hat brigens noch einen anderen Vorteil.
Da die Papierkorbobjekte (die verg„nglichen Objekte) nach jedem Hochfahren der WPS von Grund
auf neu erzeugt werden, k”nnen Sie alle versteckten \TRASH
-Verzeichnisse auf allen
Laufwerken l”schen, falls einmal etwas richtig schief geht, und nach dem n„chsten Start der
WPS ist der Papierkorb vollkommen leer.