我想对一段话进行全盘搜索,查找这段话在哪个扇区、哪个簇、柱面上,请问具体思路是什么啊?如果一段话分跨两个扇区又该怎么办呢?谢谢大家了!

解决方案 »

  1.   

    CreateFile打开硬盘设备,\\.\PhysicalDrive0,共享读写;
    DeviceIoControl取硬盘参数,IOCTL_DISK_GET_DRIVE_GEOMETRY;
    循环ReadFile读硬盘扇区,每次读多少自定,记录文件位置,查找那段话,找到后根据文件位置和硬盘参数计算出扇区、簇、柱面;
    CloseHandle。这种方法只能找文本,对于特殊格式或者加密的数据就不行了。