我想读取一个U盘的分区表,但是不知道如何读取,求助

解决方案 »

  1.   

    一般Windows操作进行的格式化,不会在U盘内生成MBR 
      

  2.   

    FAT32还是NTFS?
    早年从病毒破坏修复FAT32资料比较多(硬盘的不是U盘的),NTFS就不知道了。
      

  3.   

    要有的话第一个扇区,然后根据其中信息再读没有的话一般第一个扇区是文件系统的dbr什么的
      

  4.   

    u盘大都是fat32或fat格式的
    当然也有个别自己格式化成其他文件系统的虽然fat32文件系统效率没有ntfs的高
    但目前看 u盘用fat32格式的还是比较多的如果要进行读取分区表 可以参考一些fat32文件格式的资料
      

  5.   

    那得看格式化成什么形式了,如果是HDD型的话,是有MBR的。
    如果格式化为ZIP或者FLOPPY型的,应该是只有一个引导扇区Boot Sector。
    不过你用CreateFile打开那个设备文件,比如(.\\.\PhysicalDrive2,就是"\\\\.\\PhysicalDrive2"),用ReadFile读一个512字节的块,就是引导扇区了。另外\\.\F之类的就是以分区方式打开的。如果两者不一样,肯定是HDD型的,第一个就是MBR了,第二个是第一个分区的首扇区,也是引导记录和Boot Sector类似(不过也有一个分区表)。
      

  6.   

    写错了,\\.\F:,也就是"\\\\.\\F:"。
    的确分析磁盘结构需要参考文件系统资料。
    但是像MBR之类的东西,跟具体分区是FAT32还是NTFS的格式没有关系。