我们都知道用GetVolumeInformation可以获取硬盘的逻辑序列号,
但小弟想知道怎样在不格式化硬盘的情况下,改变硬盘的逻辑序列号

解决方案 »

  1.   

    在PBR中offset 0x27~0x2A,这个地方存储的就是硬盘的逻辑序列号
      

  2.   

    Check out Q408 on http://www.bsdg.org/swag/FAQ/0002.PAS.html
      

  3.   

    By the way, 
    http://poli.cs.vsb.cz/c/help/dos.htm
    is another good overview of the different functions available to use.Hope this helps,
      

  4.   

    谢谢c0der()篇幅不少,我慢慢看。theone() 能不能说的明白一些呀?谢谢。若嫌分少,我会再开贴的。
      

  5.   

    theone() , 在不高格的情况下
    在offset 0x27~0x2A,这个地方也存储的是硬盘的逻辑序列号吗?
      

  6.   

    可以不作高格,直接修改PBR里offset 0x27~0x2A就可以了,你可以先用winhex来修改,看看效果
    suntt,我不知道你还想了解些什么
      

  7.   

    用 API Hook拦截GetVolumeInformation,修改返回值
      

  8.   

    theone() 哥,不行呀!winhex显示的是00 00 00 00
      

  9.   

    你把图截给我看
    [email protected]
      

  10.   

    很抱歉,看来我说的并不正确,正确的定义是
    FAT12,FAT16: 0x27~0x2A
    FAT32: 0x43~0x46
    NTFS: 0x48~0x4B