|
今天提取ms-dos7.1下的工具做dos启动镜像,先将dos系统镜像安装到vmware,从虚拟机硬盘中提取安装后的文件&目录,修改对应的调用路径,主要是替换某些配置文件中的c:为a:,其中autoexec.bat:
@ECHO OFF
PROMPT $P$G
SET DIRCMD=/4
MODE CON RATE=32 DELAY=1
REM MODE CON CP PREPARE=((437)EGA.CPI)
REM MODE CON CP SELECT=437
REM KEYB US,,KEYBOARD.SYS
LH KILLER
LH DOSKEY
LH DOSLFN /Z:A:\DOS71\CP437UNI.TBL
LH MSCDEX /D:IDE-CD
LH SHARE /L:30
LH NLSFUNC
LH SMARTDRV
LH CTMOUSE
REM For compatiblity purpose:
LH CTMOUSE > NUL
ECHO.
REM For locking volumes to enable "direct disk access":
CALL LOCKDRV.BAT
BREAK ON
LFNFOR ON
ECHO Now you are in MS-DOS 7.10 prompt. Type 'HELP' for help.
ECHO.
A:\sound\envmastr.exe /l winbootdir=
A:\sound\ctcm.exe
PATH=A:\DOS71;..;;A:\DOS71\norton
call vc.bat
call gvfm.bat
call tw.bat
call ccdos.bat
call pdos.bat
A:\sound\envmastr.exe /l winbootdir=
A:\sound\ctcm.exe
其他基本保持了原来的目录结构,添加额外软件diskgenius、ghost、ntfs4dos等软件,把这些文件添加到winimage制作的dos.img中,用虚拟机floppy加载启动,发现进入logo后面不久,屏幕上输出:not ready to write drvie A:,分析上下文屏幕输出,定位到A:\sound\ctcm.exe 该句有问题,猜想是做成img镜像运行ctcm时没法写入,考虑到做系统维护用,不需要音频输出,A:\sound\envmastr.exe /l winbootdir= ,A:\sound\ctcm.exe 删除,然后问题解决。
接下来进入系统,运行diskgenius命令,发现电脑立即自动关机,猜想是diskgenius和系统的某驱动或者启动加载的程序有冲突,网上查找没找到类似的案例,于是自己手动排除:
原config.sys:
DEVICE=A:\DOS71\ECHO.SYS W/e/l/c/o/m/e /t/o MS-DOS 7.10...
DEVICE=A:\DOS71\ECHO.SYS C/o/p/y/r/i/g/h/t M/i/c/r/o/s/o/f/t C/o/r/p. A/l/l /r/i/g/h/t/s /r/e/s/e/r/v/e/d.
DEVICE=A:\DOS71\HIMEM.SYS
DEVICE=A:\DOS71\EMM386.EXE NOEMS
DEVICEHIGH=A:\DOS71\SETVER.EXE
DEVICEHIGH=A:\DOS71\POWER.EXE
DEVICEHIGH=A:\DOS71\VIDE-CDD.SYS /D:IDE-CD
REM DEVICEHIGH=A:\DOS71\DISPLAY.SYS CON=(,,1)
COUNTRY=001,437,A:\DOS71\COUNTRY.SYS
SHELL=COMMAND.COM /P /E:640
DOS=HIGH,UMB,AUTO
FCBS=4,0
FILES=30
BUFFERS=20,0
LASTDRIVE=26
STACKS=9,256
SET PATH=A:\DOS71;..;
主要分以下步骤来排除:
1.将autoexec.bat里面的内容清空,建立好对应的img镜像,加载启动错误依旧;
2.考虑到结果是关机与power可能相关,将DEVICEHIGH=A:\DOS71\POWER.EXE句移除,加载,错误依旧;
3.考虑可能是himem.sys||emm386.exe扩充内存的兼容问题,将autoexec.bat清空,congfig.sys只加载DEVICE=A:\DOS71\HIMEM.SYS,DEVICE=A:\DOS71\EMM386.EXE NOEMS,SHELL=COMMAND.COM /P /E:640三句,错误依旧;
4.继续上一步,再把congfig.sys中的DEVICE=A:\DOS71\EMM386.EXE NOEMS移除,然后发现能运行diskgenius了。
总结:diskgenius和emm386.exe有冲突!!!没见到网上的相似提示,愿给各位菜菜们提供一个案例参考。
解决方法:尚无,可以考虑不加载emm386,或者做config配置菜单,启动时选择性加载配置。
个人小菜,大神勿笑!!
[ 本帖最后由 2011virtualink 于 2011-11-23 10:09 编辑 ] |
|