Form1.cs
上传用户:chinafred
上传日期:2007-08-14
资源大小:10127k
文件大小:4k
源码类别:

数据库编程

开发平台:

C#

  1. using System;
  2. using System.Drawing;
  3. using System.Collections;
  4. using System.ComponentModel;
  5. using System.Windows.Forms;
  6. using System.Data;
  7. using System.IO;
  8. namespace ch3_10
  9. {
  10. /// <summary>
  11. /// Form1 的摘要说明。
  12. /// </summary>
  13. public class Form1 : System.Windows.Forms.Form
  14. {
  15. private System.Windows.Forms.Label label1;
  16. private System.Windows.Forms.Button button1;
  17. private System.Windows.Forms.ProgressBar progressBar1;
  18. /// <summary>
  19. /// 必需的设计器变量。
  20. /// </summary>
  21. private System.ComponentModel.Container components = null;
  22. public Form1()
  23. {
  24. //
  25. // Windows 窗体设计器支持所必需的
  26. //
  27. InitializeComponent();
  28. //
  29. // TODO: 在 InitializeComponent 调用后添加任何构造函数代码
  30. //
  31. }
  32. /// <summary>
  33. /// 清理所有正在使用的资源。
  34. /// </summary>
  35. protected override void Dispose( bool disposing )
  36. {
  37. if( disposing )
  38. {
  39. if (components != null) 
  40. {
  41. components.Dispose();
  42. }
  43. }
  44. base.Dispose( disposing );
  45. }
  46. #region Windows Form Designer generated code
  47. /// <summary>
  48. /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  49. /// 此方法的内容。
  50. /// </summary>
  51. private void InitializeComponent()
  52. {
  53. this.label1 = new System.Windows.Forms.Label();
  54. this.button1 = new System.Windows.Forms.Button();
  55. this.progressBar1 = new System.Windows.Forms.ProgressBar();
  56. this.SuspendLayout();
  57. // 
  58. // label1
  59. // 
  60. this.label1.Location = new System.Drawing.Point(64, 24);
  61. this.label1.Name = "label1";
  62. this.label1.Size = new System.Drawing.Size(128, 23);
  63. this.label1.TabIndex = 0;
  64. this.label1.Text = "真的要清空回收站吗?";
  65. // 
  66. // button1
  67. // 
  68. this.button1.Location = new System.Drawing.Point(88, 64);
  69. this.button1.Name = "button1";
  70. this.button1.TabIndex = 1;
  71. this.button1.Text = "确定";
  72. this.button1.Click += new System.EventHandler(this.button1_Click);
  73. // 
  74. // progressBar1
  75. // 
  76. this.progressBar1.Dock = System.Windows.Forms.DockStyle.Bottom;
  77. this.progressBar1.Location = new System.Drawing.Point(0, 102);
  78. this.progressBar1.Name = "progressBar1";
  79. this.progressBar1.Size = new System.Drawing.Size(248, 23);
  80. this.progressBar1.TabIndex = 2;
  81. // 
  82. // Form1
  83. // 
  84. this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
  85. this.ClientSize = new System.Drawing.Size(248, 125);
  86. this.Controls.AddRange(new System.Windows.Forms.Control[] {
  87.   this.progressBar1,
  88.   this.button1,
  89.   this.label1});
  90. this.Name = "Form1";
  91. this.Text = "清空回收站";
  92. this.ResumeLayout(false);
  93. }
  94. #endregion
  95. /// <summary>
  96. /// 应用程序的主入口点。
  97. /// </summary>
  98. [STAThread]
  99. static void Main() 
  100. {
  101. Application.Run(new Form1());
  102. }
  103. private void button1_Click(object sender, System.EventArgs e)
  104. {
  105. //获取计算机上逻辑驱动器的名称
  106. string[] drivers=Directory.GetLogicalDrives();
  107. int i=drivers.Length;
  108.             //初始化processBar
  109. this.progressBar1.Value=0;
  110.     //设定ProcessBar的步长
  111. this.progressBar1.Step=100/i;
  112.             
  113. //对每个逻辑驱动器上的回收站都要清空
  114. foreach (string driver in drivers)
  115. {
  116. try
  117. {
  118. string[] sFiles=Directory.GetFiles(driver+"\Recycled");
  119.     //首先清空回收站下单独的文件
  120. if (sFiles.Length!=0)
  121. {
  122. foreach (string sFile in sFiles)
  123. {
  124. File.Delete(sFile);
  125. }
  126.                      
  127. string[] sDirectories=Directory.GetDirectories(driver+"\Recycled");
  128. //清空回收站下的目录
  129. if (sDirectories.Length!=0)
  130. {
  131. foreach (string sDirectory in sDirectories)
  132. {
  133. Directory.Delete(sDirectory,true);
  134. }
  135. }
  136. //processBar的值增加一个步长
  137. this.progressBar1.PerformStep();
  138. }
  139. catch(Exception error)
  140. {
  141. //不加入任何的事件处理
  142. }
  143. }
  144. //程序运行结束,ProcessBar也结束
  145.         this.progressBar1.Value=100;
  146. }
  147. }
  148. }