中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-10-31 10:46
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行
DOS开发编程 & 发展交流 (开发室) » 如何在XP或者WIn2000下读取扇区的数据?
可打印版本  1,459 / 5
第1楼 zhgwbzhd 发表于 2008-05-13 15:18
高级用户 发帖 187 积分 506
如何在XP或者WIn2000下读取扇区的数据?
我用CreateFile("\\\\.\\PhysicalDrive0"...)来读取时,一般的机器都没问题,但是机器里面安装了“还原卡”,有的就不能正常读了。
但是我发现winhex是可以正常读取的??,但是不知道他用的什么方法??
希望高手指点一二。
谢谢了。
第2楼 netwinxp 发表于 2008-05-15 23:33
高级用户 发帖 366 积分 741
估计WINHEX是通过向硬盘控制器驱动程序提申请(好像要填写一个I/O申请头)来获取硬盘数据,而\\PhysicalDrive0似乎是采用INT 13H来获取数据。
至于居于I/O,强烈不推荐,因为那几乎是只有.sys才能干的事。
第3楼 zhgwbzhd 发表于 2008-05-16 09:49
高级用户 发帖 187 积分 506
恩,估计2楼说的有道理。
因为“还原卡”就是截获INT13的。
但是我只是读,并没有写,它也给截掉了,有点可恶。
不过如何能读到扇区的数据呢??这个是要解决问题的关键啊。
第4楼 netwinxp 发表于 2008-05-16 15:19
高级用户 发帖 366 积分 741
填写设备请求申请表,具体格式和使用方法你可能要查WINDOWS(好像是DDK)资料。
第5楼 zhgwbzhd 发表于 2008-05-16 22:05
高级用户 发帖 187 积分 506
恩,过两天有时间查查。应该可以直接通过什么方法直接读取端口,那样基本上可以说就不会被封掉了。
第6楼 netwinxp 发表于 2008-06-20 18:56
高级用户 发帖 366 积分 741
也可以44用VirtualProtect来修改IAT实现I/O看看,偶是WINDOWS编程的初学者,懂得不多^_^
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023