当前位置: 首页 > 图文教程 > 操作系统 > DOS > DOS不同版本的兼容使用

DOS
启动盘介绍
浅谈DOS软件的汉化
DOS不同版本的兼容使用
MSDOS.SYS文件的设置
谈打造超级DOS系统
ECHO命令的使用
DOS环境变量“全家福”
4DOS的用法
DOS下常用的相关网络命令
DEBUG命令详解
DOS下对注册表的编程
CMOS密码破解全攻略
在WinNT/2K/XP下安装纯DOS
在DOS下复活注册表数据
在DOS下使用注册表扫描程序
巧用MSDOS.SYS同时装两个WIN98
拒绝默认,更改DOS默认路径
Windows系统启动故障诊断
Windows系统蓝屏死机代码大揭秘(一)
Windows系统蓝屏死机代码大揭秘(二)

DOS不同版本的兼容使用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 41 ::
收藏到网摘: n/a

    大家知道,无论是MS-DOS还是PC-DOS,或是其它的DOS,都有许多不同的版本,例如大家最常用的MS-DOS就有1.0,3.0,3.3,5.0,6.2,7.10等众多版本。虽然DOS有很好的向下兼容能力,但用户还是不时碰到低版本和高版本不能匹配的使用的问题。当外部命令所要求的版本号与所使用的DOS版本不一致时,屏幕会显示“Incorrect DOS version”而拒绝执行进一步操作,这种版本检验有时是必要的,但大多数情况下则大可不必,尤其是在高版本的DOS下运行通常完全没有问题。因此,现在谈谈几个兼容使用的方法。

一: 使用命令行工具软件更改版本号

    这是一种简便易行的方法,只需一两条简单的DOS命令就可以实现,但是,它需要专门的软件,如VERS 1.1或DOSVER等。VERS的用法是,VERS [DOS版本号],如VERS 7.10就可使当前版本号变为7.10,非常实用。而DOSVER是个内存驻留程序,可以自动调整DOS版本号,免去了人工操作的麻烦。它们可以在“DOS软件分类下载”中下载,其中DOSVER为注册破解版本。

二:使用DOS自带的SERVER

    SERVER是DOS 5.0起自带的命令,它利用创建版本表的方法运行不同版本的DOS程序。方法是先设置版本表,然后将SERVER.EXE在CONFIG.SYS中用DEVICE/DEVICEHIGH命令加载。注意,每更改一次版本表都需重新启动计算机才能生效。

三:取消对DOS版本的检验

    外部命令用版本号检测的方法来确定正在使用的DOS版本。只要对这些外部命令稍做修改,就可取消它对DOS版本的检查,使之能适用于任何版本的DOS。这样,便可顺利地使用任何版本的DOS外部命令。

    通用的方法是用DEBUG调入要修改的文件,用S命令寻找版本检查功能4B的功能号赋值地址,然后反汇编这一地址,找到“JZ xxx”,将其用A命令修改成“JMP xxx”,再用W命令写回磁盘。下面是修改DOS 3.30的DISKCOPY.COM的例子。

DEBUG DISKCOPY.COM(回车)
-S 100 FFFE B4 30
CS:1650
-U 1650
XXXX:1650 B430   MOV AH,30
XXXX:1652 CD21   INT 21
XXXX:1654 3D031E CMP AX,1E03
XXXX:1657 740B   JZ 1664
XXXX:1659 BAE90F MOV DX,0FE9
...
-A 1657
XXXX:1657 JMP 1664
XXXX:1659
-W
-Q

注意:修改后的“JMP xxxx”字节数不能起过“JZ xxxx”的字节数。

    另外,还有其它一些方法,如用含对应DOS版本的系统软盘启动等,由于比较麻烦,所以不再说明。