继续上一篇关于读取磁盘的问题(http://blog.csdn.net/HegcH/archive/2009/04/28/4134289.aspx ),今天我用我的优盘试验了一下。我的优盘是FAT格式的,使用UltraISO提取为硬盘镜像之后跟我使用那个程序读取出来的数据进行对比,发现镜像的第 33个扇区数据时候与读取的数据开始完全一致。我找了不少关于MBR的内容看了,没有很明白,但是对照说明查看镜像的第一个扇区还是看出了上边的数据的意义。
不知道怎么使用C语言读取引导扇区这些? 如果在上次读取硬盘那个程序上修改一下,将一个512字节的空内容写到优盘第一个可以程序读取扇区,
memset(buffer, 0, 512);
WriteFile(hDev, buffer, 512, &cb, NULL);
再打开该优盘,系统提示:
这张优盘就费掉了,里边的内容没有了。我懒得去把这512个字节逐个输入到buffer中在写进去了。反正也没有什么重要内容。(建议大家不要乱试,特别是对于硬盘)。
我想了一个简单的方法,将buffer的最后两个字节改为0x55AA再写入,结果发现这个“聪明”的方法是没有用的。我还是只有把优盘给格式化了。