Irw*_*wan 7 windows delphi recycle-bin
我用这个程序:
function MoveToRecycle(sFileName: widestring): Boolean;
var
fos: TSHFileOpStructW;
begin
FillChar(fos, SizeOf(fos), 0);
with fos do
begin
wnd := 0;
wFunc := FO_DELETE;
pFrom := PWideChar(sFileName + #0 + #0);
pTo := #0 + #0;
fFlags := FOF_FILESONLY or FOF_ALLOWUNDO or FOF_NOCONFIRMATION or FOF_SILENT;
end;
Result := (ShFileOperationW(fos) = 0);
end;
Run Code Online (Sandbox Code Playgroud)
如果回收站已满,会返回false或永久删除文件会发生什么?
任何帮助,将不胜感激.
找出答案的最好方法就是实际去做。让我的回收站至少占驱动器的 1%。创建了一堆大文件并使用您的函数将它们移动到回收站。
我发现(无论如何在 XP 上)该函数总是将其移至回收站;但会永久删除最旧的已删除文件。因此,当回收站填满时,它会采用“先进先出”类型的方法来决定启动哪个文件。
我无法让函数返回 false。也许创建一个对于分配的回收站来说太大的文件可以做到这一点。
| 归档时间: |
|
| 查看次数: |
736 次 |
| 最近记录: |