博客园  :: 联系 :: 管理

转自:【时空论坛

diskrw.exe 能够在WIN32环境下读取、写入、显示物理磁盘和逻辑磁盘任何扇区的信息,
该程序只能在Win32环境下运行,无法运行在纯dos环境,是Win32控制台程序。

DISKRW [Disk] [SectorStart] [Sectors] [Option] [FileName]
  Disk:
     0-First hard Disk, 1-Second hard Disk, ...
    OR
     A:, B:, C:, D:,  ...
  SectorStart:
     Absolute Sector No. of PhysicalDisk/LogicDisk
  Sectors:
     How many Sectors to Process
  Option:
     /S  Save PhysicalDisk/LogicDisk Sector Info to file
     /R  Restore PhysicalDisk/LogicDisk Sector Info to Disk
     /C  Compare PhysicalDisk/LogicDisk Sector info With FileName
     /L  List PhysicalDisk/LogicDisk Sector info
  FileName:
     File to Save or Read PhysicalDisk/LogicDisk Sector info


如果处理物理磁盘 disk 的参数选取0(第一硬盘)、1(第二硬盘)、....
如果处理逻辑磁盘 disk 的参数选取A:、B:、C:、....

SectorStart参数是处理磁盘的绝对扇区号,应该是大于等于0的整数

Sectors是处理扇区的数量,也就是从SectorStart为起始位置要处理的扇区数量

Option参数分为四种:
/S 参数为保存磁盘扇区信息到文件,文件名由FileName指定,如果不指定文件名的话程序提供默认文件名
/R 参数为将文件内容写入磁盘指定扇区,文件名由FileName指定,如果不指定文件名的话程序使用默认文件名
/C 参数为将文件内容与磁盘指定扇区信息进行比较,文件名由FileName指定,如果不指定文件名的话程序使用默认文件名
/L 参数为将磁盘指定扇区信息显示到屏幕上。


例子:
========对物理磁盘操作========
保存第一物理硬盘的第0个扇区开始共一个扇区的信息到文件 mbr0.bin (也就是第一硬盘的mbr信息)
diskrw 0 0 1 /s mbr0.bin

保存第一物理硬盘的第10扇区开始共20个扇区的信息到文件 10-20.bin
diskrw 0 10 20 /s 10-20.bin

将文件bbb.bin的内容写入第一物理磁盘第30扇区开始共10个扇区,要求bbb.bin的大小应该为10个扇区的大小,也就是5120字节
diskrw 0 30 10 /r bbb.bin

在屏幕上显示第一硬盘的mbr信息满屏暂停
diskrw 0 0 1 /L /P

========对逻辑磁盘操作=========
保存C: 第0个扇区开始共一个扇区的信息到文件 bootc.bin (也就是C:的boot扇区)
diskrw C: 0 1 /s bootc.bin

保存C:的第10扇区开始共20个扇区的信息到文件 10-20.bin
diskrw C: 10 20 /s 10-20.bin

将文件bbb.bin的内容写入c:第30扇区开始共10个扇区,要求bbb.bin的大小应该为10个扇区的大小,也就是5120字节
diskrw c: 30 10 /r bbb.bin

在屏幕上显示c:的boot区信息满屏暂停
diskrw c: 0 1 /L /P

 

diskrw.rar (19.06 KB)

2006.10.10
1 可支持单块硬盘最大为2048G

2006.3.24
1 一项在显示方面bug的修正
2 修正了在某些型号的硬盘上,一次处理扇区数达到65535(0xffff)时报错的bug

diskrw 2006.3.6更新
1 修正了扇区起始位置大于4G时的错误
2 支持16进制,例如:
  diskrw c: 0xab 0xf /l /p /a

2005.10.10
1 使用 /L 参数方面的一些更新,使用大写16进制显示扇区信息
2 增加显示ASC码的代码 /A 参数
  例子: diskrw 0 0 1 /L /P /A
  注:应该选择代码页为437,否则可能为中文乱码,
        使用命令 mode con cp select=437
3 一项在显示方面bug的修正

2007.1.28更新diskrw

附件

diskrw.rar (19.06 KB)

 

DISKRW070128.rar (11.8 KB)

 

DISKRW070128.rar (11.8 KB)