无忧启动论坛

 找回密码
 注册
搜索
一次装机 终生领工资最纯净的「微PE装机优盘」UEPON大师作品大连甘井子辛寨子由家工业园标准厂房出租广告位出租 QQ:184822951
查看: 460|回复: 9

[求助] 如何编写DOS程序 读取和修改MBR

[复制链接]
发表于 2017-9-13 16:57:22 | 显示全部楼层 |阅读模式
目前想要实现这样一个功能,想要编写一个DOS程序,然后放在DOS环境下,做成镜像在网络预启动或者U盘启动时加载img镜像文件,DOS启动后默认执行我编写的DOS程序,目前已经实现这一步。但现在我的目标是做一个类似***的程序,比如说读取和修改MBR要怎么实现?有没有大神指点下。
我试过了使用打卡“\\\\.\\PhysicalDrive0”,但好像不行,借助Windows API也是行不通的。目前我DOS的开发环境使DJGPP,小白一枚,求指点迷津。
发表于 2017-9-17 08:31:43 | 显示全部楼层
我试过了使用打卡“\\\\.\\PhysicalDrive0”,但好像不行,借助Windows API也是行不通的。目前我DOS的开发环境使DJGPP,

从这两句看来,楼主是初学者,先放弃吧,好好学习下再做
 楼主| 发表于 2017-9-13 17:20:07 | 显示全部楼层
奇怪D I S K G E N I U S 怎么会被和谐掉?

点评

防DG盗版,dos下试下fdisk(通过批处理调用)  详情 回复 发表于 2017-9-13 17:36
发表于 2017-9-13 17:36:22 来自手机 | 显示全部楼层
javictory 发表于 2017-9-13 17:20
奇怪D I S K G E N I U S 怎么会被和谐掉?

防DG盗版,dos下试下fdisk(通过批处理调用)
发表于 2017-9-13 17:40:16 来自手机 | 显示全部楼层
DOS下应该没有win api,应该是调用中断吧。
发表于 2017-9-13 18:45:49 | 显示全部楼层
“\\\\.\\PhysicalDrive0”这个是cmd就不是DOS,目前我DOS的开发环境使DJGPP,小白一枚,用djgpp就不是小白吧。DOS程序读取和修改MBR用INT 13H功能吧。
发表于 2017-9-13 19:06:18 | 显示全部楼层
汇编,或者debug指令。
发表于 2017-9-14 08:38:58 | 显示全部楼层
本帖最后由 2305753123 于 2017-9-14 08:41 编辑

debug托托滴
 楼主| 发表于 2017-9-18 09:26:09 | 显示全部楼层
多谢大家指点,这边也分享下,如果有什么更好的办法希望大家也可以不吝赐教。
目前使用的是debug.exe ,直接通过写批处理文件来获取MBR。
(1)首先在写下,AUTOEXEC.BAT中写下,最后一行加入debug < script.bin ;
(2)命名一个文件script.bin,然后写入 如下指令:
  1. A100
  2. mov ax,0201
  3. mov bx,1000
  4. mov cx,1
  5. mov dx,80
  6. int 13
  7. int 20

  8. g=100
  9. D1000
  10. D
  11. D
  12. D
  13. quit

复制代码

就可以看到完整的MBR的显示了。
发表于 2017-9-21 11:35:34 | 显示全部楼层
谢谢楼主的分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|无忧启动 ( 闽ICP备05002490号-1

闽公网安备 35020302032614号

GMT+8, 2017-11-20 17:10

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表