管理

C#实现清空回收站的方法

Posted on 2022-10-20 22:50  lzhdim  阅读(52)  评论(0编辑  收藏  举报
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace App
{
 class ClearRecycle
 {
  [DllImportAttribute("shell32.dll")]
  private static extern int SHEmptyRecycleBin(IntPtr handle, string root, int falgs);
  const int SHERB_NOCONFIRMATION = 0x000001;
  const int SHERB_NOPROGRESSUI = 0x000002;
  const int SHERB_NOSOUND = 0x000004;
  /// <summary>
  /// 清空回收站
  /// </summary>
  /// <param name="tip">是否提示</param>
  /// <param name="form">当前窗体,一般传入this</param>
  public static void Clear(bool tip, System.Windows.Forms.Form form)
  {
   System.Windows.Forms.DialogResult result = System.Windows.Forms.DialogResult.No;
   if (tip)
    result = System.Windows.Forms.MessageBox.Show("确定要清空回收站吗?", "友情提示", System.Windows.Forms.MessageBoxButtons.YesNo, System.Windows.Forms.MessageBoxIcon.Information);
   else
    result = System.Windows.Forms.DialogResult.Yes;
   if (result == System.Windows.Forms.DialogResult.Yes)
   {
    SHEmptyRecycleBin(form.Handle, "", SHERB_NOCONFIRMATION + SHERB_NOPROGRESSUI + SHERB_NOSOUND);
   }
  }
 }
}

 

Copyright © 2000-2022 Lzhdim Technology Software All Rights Reserved