Файл в корзину
|
MS Windows: Корзина должна быть чиста как совесть!
|
Не забудьте добавить ShellAPI в группу uses.
А это сама функция, которая выполняет всю работу:
function RecycleFile(sFileName: string): Boolean;
var
FOS: TSHFileOpStruct;
begin
FillChar(FOS, SizeOf(FOS), 0);
with FOS do
begin
wFunc := FO_DELETE; { так же можно использовать FO_COPY.
pFrom := PChar(sFileName);
pTo := { только для FO_COPY }
fFlags := FOF_ALLOWUNDO; { Так как мы хотим послать файл в корзину }
end;
// Отправляем файл
Result := (SHFileOperation(FOS) = 0);
end;
// Пример вызова функции:
RecycleFile('E:\Test.exe' + #0);
// либо, если изменить строку
// pFrom:=PChar(sFileName+#0); ,
// то можно вызывать проще:
RecycleFile(Filename);
|
|