明辉手游网中心:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

怎么清空回收站

[摘要]Procedure EmptyRecycleBin ; Const SHERB_NOCONFIRMATION = 00000001 ; SHERB_NOPROGRESSUI = 0000...
Procedure EmptyRecycleBin ;
Const
  SHERB_NOCONFIRMATION = $00000001 ;
  SHERB_NOPROGRESSUI   = $00000002 ;
  SHERB_NOSOUND        = $00000004 ;
Type
  TSHEmptyRecycleBin = function (Wnd : HWND;  
                                 pszRootPath : PChar;  
                                 dwFlags : DWORD
                       ) : HRESULT; stdcall ;
Var
  SHEmptyRecycleBin : TSHEmptyRecycleBin;  
  LibHandle         : THandle;
Begin  { EmptyRecycleBin }
  LibHandle := LoadLibrary(PChar('Shell32.dll')) ;
  if LibHandle <> 0 then
     @SHEmptyRecycleBin := GetProcAddress(LibHandle, 'SHEmptyRecycleBinA')
  else
  begin
     MessageDlg('Failed to load Shell32.dll.', mtError, [mbOK], 0);
     Exit;
  end;


  if @SHEmptyRecycleBin <> nil then
     SHEmptyRecycleBin(Application.Handle,    
                       nil,  
                       SHERB_NOCONFIRMATION or SHERB_NOPROGRESSUI or SHERB_NOSOUND);
  FreeLibrary(LibHandle);
  @SHEmptyRecycleBin := nil ;
end;  { EmptyRecycleBin }