AI摘要

本文介绍了一个用于清空回收站的程序,该程序通过调用Windows API函数SHEmptyRecycleBin实现。程序首先加载Shell32.dll库,获取SHEmptyRecycleBin函数的地址,然后调用该函数并传入参数SHERB_NOCONFIRMATION、SHERB_NOPROGRESSUI和SHERB_NOSOUND,以实现无需确认、无进度界面和无声音的清空回收站操作。最后,程序释放库并清除函数地址。
本文介绍了一个

{=================================================================
 功  能:  清空回收站
 叁  数:  无
 返回值:  无
=================================================================}
procedure EmptyRecycleBin;
const
 SHERB_NOCONFIRMATION = $00000001;
 SHERB_NOPROGRESSUI = $00000002;
 SHERB_NOSOUND = $00000004;
type
 TSHEmptyRecycleBin = function (Wnd: HWND;LPCTSTR: PChar;DWORD: Word): integer; stdcall;
var
 SHEmptyRecycleBin: TSHEmptyRecycleBin;
 LibHandle: THandle;
begin
 LibHandle := LoadLibrary(PChar('Shell32.dll'));
 if LibHandle <> 0 then
   @SHEmptyRecycleBin := GetProcAddress(LibHandle, 'SHEmptyRecycleBinA')
 else  begin
   MsgBox('Failed to load Shell32.dll.', mtError, [mbOK]);
   Exit;
 end;
 if @SHEmptyRecycleBin <> nil then
   SHEmptyRecycleBin(Application.Handle,'',SHERB_NOCONFIRMATION or  SHERB_NOPROGRESSUI or SHERB_NOSOUND);
 FreeLibrary(LibHandle);
 @SHEmptyRecycleBin := nil;
end;

※相关文章推荐※



最后修改:2009 年 08 月 16 日
点赞的人是最酷的