|
樓主 |
發表於 2019-2-9 19:44:23
|
顯示全部樓層
本帖最後由 makimaki2 於 2019-2-9 20:29 編輯
>關於RecycleBin有人做了些實驗,似乎與權限有關,結果很有趣
>https://superuser.com/questions/369900/windows-7-cross-volume-symlinks-affecting-recycle-bin
這篇討論的似乎是RecycleBin跨Vol
HardLink確實是不能跨盤,原理上如此,但是 事在人為沒有的功能寫出來就好了 ,因此有了第2代的Symbolic Link
理論上Symbolic Link是可以跨盤的,甚至是跨到SMB的網路硬盤 如\\192.168.123.456\
mklink /d Z:\$RECYCLE.BIN\ X:\$RECYCLE2.BIN
我直接建立空檔案,從X:或是Z:用剪貼或是拖曳到X:\$RECYCLE.BIN以及到Z:\$RECYCLE.BIN
都可以成功,最後檔案都在X:\$RECYCLE.BIN
也就是Symbolic Link跨盤是成功的
RecycleBin底下還有一層X:\$RECYCLE.BIN\S-1-5-18,此盤似乎不是一般資料夾,行為特殊,在沒做任何處理下
我直接建立空檔案,從X:或是Z:用剪貼或是拖曳到X:\$RECYCLE.BIN\S-1-5-18以及到Z:\$RECYCLE.BIN\S-1-5-18
檔案就沒反應的消失了
但是mklink可以成功
mklink /d Z:\$RECYCLE.BIN\S-1-5-18 X:\$RECYCLE.BIN\S-1-5-18
在Z盤刪除檔案,剪貼或拖曳到到Z:\$RECYCLE.BIN\S-1-5-18
會報錯表示資源回收桶已損毀,然後會有移動檔案的窗口,最後檔案消失
或許與RecycleBin的內部程序業務邏輯有關
在沒有原始代碼的情況很多難行之處,但是終究Windows只是一個大型UI
根據以上的研究,我們仍可以建立右鍵功能表"My刪除",來取代原本的刪除
將檔案從任意盤符Move到X:\$RECYCLE.BIN\
當然原本的Recycle就用我之前提出的註冊表禁用掉
實現了不寫入SSD,保持Recycle功能,重啟後清除的功能
感覺不是很完美就是了
|
|