C#如何检查U盘真实容量?比如有人把芯片给升级了...怎么才能检查U盘的真实容量

解决方案 »

  1.   

    这个不好说
    听说
    微软有一款dos的
    format c:\0.5
    可以把容量真加一倍
    512bit的扇区
    改为了256 bit的扇区
    还是能存储双倍数据的
    只是,容易坏道,坏到后
    数据容易丢失,没有冗错功能
      

  2.   

    如果U盘已经被人刷过固件信息了,你通过软件读出的肯定是刷过以后的假数据;
    关于楼主说的往里面写数据是不是不实际啊?要是一个U盘4G,8G的,你写数据也不是几秒钟的事啊。
    是不是可以通过读取到其实扇区数,和每个扇区的容量数直接计算啊,或者是读取其他没有办法修改的固件信息计算出容量,具体还要去研究下硬件。
      

  3.   

    现在我正在查阅相关USB的信息~~ 希望有大大解决
      

  4.   

    检测U盘的我已经找到了- -!~
    DriveInfo[] s = DriveInfo.GetDrives();
                foreach (DriveInfo drive in s)
                {
                    if (drive.DriveType == DriveType.Removable)
                    {
                        listBox1.Items.Add("U盘已插入,盘符为:" + drive.Name.ToString());
                        //break;
                    }
                }