リサイクルビンがいっぱいになったとき、シュファイレオペレーションは何をしますか?
-
19-09-2019 - |
質問
この手順を使用します。
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;
リサイクルビンがいっぱいになったらどうなりますか、それは虚偽または永続的にファイルを削除するか、削除しますか?
どんな助けも感謝します。
解決
見つけるための最良の方法は、実際にそれを行うことです。私のリサイクルビンをドライブの最低1%にしました。大量の大きなファイルを作成し、機能を使用してビンをリサイクルするために動かしました。
私が見つけているのは、(とにかくXPで)関数が常にリサイクルビンに移動することです。ただし、最も古い削除されたファイルを永続的に削除します。そのため、リサイクルビンがいっぱいになったときに「最初の」タイプのアプローチを使用して、どのファイルを起動するかを決定します。
機能をfalseに戻すことができませんでした。おそらく、割り当てられたリサイクルビンには大きすぎるファイルを作成することができます。
所属していません StackOverflow