主题:文件分配表出错
dosdosfans
[专家分:0] 发布于 2012-06-14 17:12:00
利用QB45写的程序获得硬盘的ID,然后再执行文件读写操作,则提示文件分配表出错,终止程序,返回DOS操作也不行,一定要得新启动才可以。是不是在读完硬盘ID后要调整端口状态。我不太懂这个,所以可能说得不太清楚。
回复列表 (共7个回复)
沙发
dosdosfans [专家分:0] 发布于 2012-06-16 16:00:00
没有人回复我,看来都在玩高级的东西了,我的意思是说是不是要释放硬盘的控制权,怎样释放,我找不到相关的资料很无奈。敢请走过路过的大侠指点一二,谢谢!
板凳
dosdosfans [专家分:0] 发布于 2012-06-16 16:07:00
+----+------+------+---+---+---+----------------+---------------+
|Addr|-CS1FX|-CS3FX|SA2|SA1|SA0| Read (-IOR) | Write (-IOW) |
+----+------+------+---+---+---+----------------+---------------+-----------+
| | 0 | 0 | X | X | X | ILLEGAL | ILLEGAL | <--+ |
| | 1 | 1 | X | X | X | High Impedance | Not Used | Control |
|3FX | 1 | 0 | 0 | X | X | High Impedance | Not Used | Block |
|3FX | 1 | 0 | 1 | 0 | X | High Impedance | Not Used | Registers |
|3F6 | 1 | 0 | 1 | 1 | 0 | Altern Status | Device Control| | |
|3F7 | 1 | 0 | 1 | 1 | 1 | Drive Address | Not Used | <--+ |
+----+------+------+---+---+---+----------------+---------------+-----------+
|1F0 | 0 | 1 | 0 | 0 | 0 | Data Port | Data Port | <--+ |
|1F1 | 0 | 1 | 0 | 0 | 1 | Error Register | Precomp | | |
|1F2 | 0 | 1 | 0 | 1 | 0 | Sector Count | Sector Count | Command |
|1F3 | 0 | 1 | 0 | 1 | 1 | Sector Number | Sector Number | Block |
|1F4 | 0 | 1 | 1 | 0 | 0 | Cylinder Low | Cylinder Low | Registers |
|1F5 | 0 | 1 | 1 | 0 | 1 | Cylinder High | Cylinder High | | |
|1F6 | 0 | 1 | 1 | 1 | 0 | Drive / Head | Drive / Head | | |
|1F7 | 0 | 1 | 1 | 1 | 1 | Status | Command | <--+ |
+----+------+------+---+---+---+----------------+---------------+-----------+
谁给解释一下,或者汉化一下
3 楼
dosdosfans [专家分:0] 发布于 2012-06-17 00:04:00
焦急的在等待
4 楼
dosdosfans [专家分:0] 发布于 2012-06-18 18:49:00
读完硬盘ID后,再打开文件时出现Device I/O error 错误代码为57,有的时候出现文件不能找到,返回DOS目标文件夹不见了,重启电脑就正常。
5 楼
dosdosfans [专家分:0] 发布于 2012-06-19 01:45:00
看来是真的木有人知道了,顺便再说一句我的笔记本上运行是正常的,笔记本是PIII的老机器,台式机是C4的机器。
6 楼
dosdosfans [专家分:0] 发布于 2012-06-19 01:47:00
我试过把1F2到1F7的数据用INP保存下来,读完ID后再用OUT恢复,结果还是一样。不行
7 楼
calvinhuang2 [专家分:0] 发布于 2012-08-31 18:44:00
应该是没有人可以回答你
有没有想过是因为操作系统的关系
我来回复