Delphi编程实现清空回收站

Delphi编程实现清空回收站,第1张

Delphi编程实现清空回收站,第2张

首先,在程序的实现部分定义三个常量和一个类型声明,代码如下:
const

SHERB _ no confirmation = $ 00000001;

SHERB _ NOPROGRESSUI = $ 00000002

SHERB _ NOSOUND = $ 00000004

类型

TSHEmptyRecycleBin =

函数(Wnd:HWND;LPCTSTR:PChar;DWORD:Word):整数;stdcall
在程序运行开始时,程序会先通过LoadLibrary函数加载动态链接库Shell32.dll,并将加载的操作句柄存储在LibHandle中。然后通过@ SHEmptyRecycleBin:= getProcAddress(lib handle,' SHEmptyRecycleBin ')语句读取SHEmptyRecycleBin函数的地址。如果上面的语句可以正确执行(即@ shemptyrecyclebin不等于nil),那么调用shemptyrecyclebin完成清空空回收站的操作。最后,发布动态链接库。响应代码如下:
proceduretform 1 . button 1 click(sender:to object);
var
SHEmptyRecycleBin:TSHEmptyRecycleBin;
lib handle:thand le;
begin
lib handle:= LoadLibrary(PChar(' shell 32 . dll ');
if lib handle 0 then
begin
@ SHEmptyRecycleBin:= GetProcAddress(lib handle,' SHEmptyRecycleBinA ');
end
else
begin
MessageDlg('未能加载Shell32.dll,mtError,[mbOK],0);
退出;
end;
如果@SHEmptyRecycleBin为nil,则
begin
SHEmptyRecycleBin(应用程序。Handle ' '、SHERB_NOCONFIRMATION或
SHERB_NOPROGRESSUI或SHERB _ no sound);
end;
free library(lib handle);
@ SHEmptyRecycleBin:= nil;
end;
程序代码如下:
unit unit 1;

interface
使用
窗口、消息、系统工具、变量、类、图形、控件、表单、
对话框、StdCtrls

type
t form 1 = class(t form)
button 1:t button;
过程按钮1Click(发件人:to object);
私有
{私有声明}
公共
{公共声明}
end;

var
form 1:t form 1;
实现
const
SHERB _ no confirmation = $ 00000001;
SHERB _ no progressui = $ 00000002;
SHERB _ no sound = $ 00000004;
type
TSHEmptyRecycleBin = function(Wnd:HWND;LPCTSTR:PChar;DWORD:Word):整数;stdcall

{$R *。dfm}
过程TForm1。Button1Click(发件人:to object);
var
SHEmptyRecycleBin:TSHEmptyRecycleBin;
lib handle:thand le;
begin
lib handle:= LoadLibrary(PChar(' shell 32 . dll ');
if lib handle 0 then
begin
@ SHEmptyRecycleBin:= GetProcAddress(lib handle,' SHEmptyRecycleBinA ');
end
else
begin
MessageDlg('未能加载Shell32.dll,mtError,[mbOK],0);
退出;
end;

如果@SHEmptyRecycleBin为nil,则
begin
SHEmptyRecycleBin(应用程序。Handle ' '、SHERB_NOCONFIRMATION或SHERB_NOPROGRESSUI或SHERB _ no sound);
end;
free library(lib handle);
@ SHEmptyRecycleBin:= nil;
end;
结束。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » Delphi编程实现清空回收站

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情