求用C#实现指定磁盘检测具体过程,代码

解决方案 »

  1.   

    使用C#方法 ( 其中使用一个定时器)private void timer1_Tick(object sender, EventArgs e)
            {
                DriveInfo[] allDrivers = DriveInfo.GetDrives();
                foreach (var d in allDrivers)
                {
                    if (d.IsReady)
                    {
                        if (d.DriveType == DriveType.Removable)
                        {                            string[] filenames = Directory.GetFileSystemEntries(d.Name);
                                foreach (string file in filenames)                  //依次访问该磁盘中的文件或文件夹
                                {
                                    if (Path.GetFileName(file) == "office")     //判断该移动磁盘中是否有某个文件夹或文件
                                    {                                    this.timer1.Enabled = false  //暂时关闭定时器
                                        DialogResult dr = MessageBox.Show("是否要拷贝U盘中的信息?", "U盘", MessageBoxButtons.OKCancel);
                                        if (dr == DialogResult.OK)
                                        {
                                            //MessageBox.Show("正在搜索U盘中数据,请稍后~");
                                            this.label1.Text = "磁盘位置:" + d.Name;
                                        }
                                        break;
                                    }                                
                                }
                            }
                            
                        }
                    }
                }                 
                this.timer1.Enabled = true;    //开启定时器
       }
      

  2.   


        public static void Main()
        {
            DriveInfo[] allDrives = DriveInfo.GetDrives();        foreach (DriveInfo d in allDrives)
            {
                Console.WriteLine("Drive {0}", d.Name);
                Console.WriteLine("  File type: {0}", d.DriveType);
                if (d.IsReady == true)
                {
                    Console.WriteLine("  Volume label: {0}", d.VolumeLabel);
                    Console.WriteLine("  File system: {0}", d.DriveFormat);
                    Console.WriteLine(
                        "  Available space to current user:{0, 15} bytes", 
                        d.AvailableFreeSpace);                Console.WriteLine(
                        "  Total available space:          {0, 15} bytes",
                        d.TotalFreeSpace);                Console.WriteLine(
                        "  Total size of drive:            {0, 15} bytes ",
                        d.TotalSize);
                }
            }
        }
      

  3.   

     ProcessStartInfo psi = new ProcessStartInfo("chkdsk", "d:");
     Process.Start(psi);d换成你指定的盘符