醉卧沙场君莫笑 古来征战几人回
RSS icon Email icon Home icon
  • 使hdtune扫硬盘时可以从某个位置开始

    Posted on 四月 4th, 2009 admin No comments

    hdtune扫硬盘坏道,很慢。为了让它可以从某个位置开始,调了一下:

    004089F5                            . 57                      PUSH EDI                                 ; /lParam 004089F6 <blockpos>                 . 8B7C24 1C               MOV EDI,DWORD PTR SS:[ESP+1C]            ; | 004089FA                            . 8946 1A                 MOV DWORD PTR DS:[ESI+1A],EAX            ; | 004089FD                            . 57                      PUSH EDI                                 ; |wParam 004089FE                            . 68 0E040000             PUSH 40E                                 ; |Message = WM_USER+14. 00408A03                            . 51                      PUSH ECX                                 ; |hWnd 00408A04                            . FF15 FC964700           CALL DWORD PTR DS:[4796FC]               ; \SendMessageA

     在 blockpos处,修改esp+1c里的值,就可以了。

    总的来说,hdtune把硬盘分为很多个格子,每行50个,总共有很多行。每一个小格扫完后,就发送这个自定义的消息 WM_USER+14来通知主线程画一个色块。绿色表示无问题,红色表示有问题。运行到blockpos这一行时,把这个值改掉,即可定义到第n个格子。第0个为左上,第49个为第一行最后一个,依此类推。

    Leave a reply