本文整理自网络,侵删。
delphi将文件删除至回收站
把文件删除到回收站,在我们的应用程序中,很少这样设计。为了使已删除文件能被恢复,也有删除至回收站的情况。
这里利用了windows外壳API函数 SHFileOperation。在ShellAPI 单元中,可以找到它的原型,它利用了一个SHFileOpStruct结构传递参数。在调用时,要将该结构内的参数填写好。
在本例中,在From上放置一个测试按钮,点击该按钮删除c:tete1.txt文件。
procedure TForm1.Button1Click(Sender: TObject);
var
SF:TSHFileOpStruct;
fname:string;
begin
fname:='c:tete1.txt';
SF.Wnd:=0;
SF.wFunc:=FO_DELETE;
SF.pFrom:=PChar(fname);
SF.pTo:='';
sf.fFlags:=FOF_ALLOWUNDO;
SHFileOperation(SF);
end;
如果要将两个或多个文件删除至回收站呢?看下面的代码:
procedure TForm1.Button2Click(Sender: TObject);
var
SF:TSHFileOpStruct;
fname:string;
begin
fname:='c:tete1.txt'#0'c:tete2.txt';
SF.Wnd:=0;
SF.wFunc:=FO_DELETE;
SF.pFrom:=PChar(fname);
SF.pTo:='';
SF.fFlags:=FOF_ALLOWUNDO;
SHFileOperation(SF);
end;
这段代码将文件c:tete1.txt与文件c:tete2.txt同时删除,在给文件赋值时,文件名之间用空字符串 #0 隔开。
相关阅读 >>
Delphi firemonkey限制tedit只能输入数字的完美方法
Delphi 注入不用writeprocessmemory 函数
Delphi 使用firedac的tfdscript组件执行文件中描述的sql语句
更多相关阅读请进入《Delphi》频道 >>