中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS启动盘 & LOGO技术 (启动盘室) » Wengier 大侠我有问题请教,[急急急]!
作者:
标题: Wengier 大侠我有问题请教,[急急急]! 上一主题 | 下一主题
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『楼 主』:  Wengier 大侠我有问题请教,[急急急]!

Wengier 大侠, 我的电脑有三个光驱(一个刻录机和两个旧光驱), 我想制作一个自动安装Win98的可启动光盘, 现在需要光盘在启动后自动从三个光驱中找到本光盘所在盘符,才能对光盘进行操作.于是我使用了你的findcd.exe文件,并在autoexec.bat中加入了以下语句:

CTLOAD oakcdrom.sys /d:mscd001
MSCDEX.EXE /d:mscd001
Findcd/s
if %CDROM%#==5# goto 5CD
if %CDROM%#==4# goto 4CD
if %CDROM%#==3# goto 3CD
if %CDROM%#==2# goto 2CD
if %CDROM%#==0# goto err
:1CD
set Win98CD=%CDROM1%
goto 98UP
:2CD
if not exist %CDROM2%\win98\setup.exe goto 1cd
set Win98CD=%CDROM2%
goto 98UP
:3CD
if not exist %CDROM3%\win98\setup.exe goto 2cd
set Win98CD=%CDROM3%
goto 98UP
:4CD
if not exist %CDROM4%\win98\setup.exe goto 3cd
set Win98CD=%CDROM4%
goto 98UP

以上命令在理论上还算正确,但是当我用该光盘启动后却出现以下提示:

C:\>MSCDEX.EXE /d:mscd001
MSCDEX Version 2.95 already started

C:\>Findcd/s
CDROM=3
CDROM1=I:
CDROM2=J:
CDROM3=K:

C:\>if 3#==5# goto 5CD
C:\>if 3#==4# goto 4CD
C:\>if 3#==3# goto 3CD
C:\>if not exist K:\win98\setup.exe goto 2cd

Not ready reading drive K
Abort, Retry, Fail?

我分析了一下原因,发现当运行autoexec.bat后,程序先从最后一个光驱的盘符进行查找光盘,如果光盘中有指定的文件,则确定该光盘就是所要的盘符. 但是当光盘不在该光驱中,则会有以上出错的提示, 请问这个问题该如何解决? 另外请问还有没有更简便, 更好更准确的方法能让程序自动在几个光驱中找到当前光盘所在盘符?  请赐教,
万分感谢!

2003-6-7 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Roy
管理员

專業島民



积分 4869
发帖 1633
注册 2002-12-10
状态 离线
『第 2 楼』:  

改成這樣吧.....

  Quote:
CTLOAD oakcdrom.sys /d:mscd001
MSCDEX.EXE /d:mscd001
Findcd/s
if %CDROM%#==5# goto 5CD
if %CDROM%#==4# goto 4CD
if %CDROM%#==3# goto 3CD
if %CDROM%#==2# goto 2CD
if %CDROM%#==0# goto err
:1CD
set Win98CD=%CDROM1%
goto 98UP
:2CD
command /f /c if not exist %CDROM2%\win98\setup.exe goto 1cd
set Win98CD=%CDROM2%
goto 98UP
:3CD
command /f /c if not exist %CDROM3%\win98\setup.exe goto 2cd
set Win98CD=%CDROM3%
goto 98UP
:4CD
command /f /c if not exist %CDROM4%\win98\setup.exe goto 3cd
set Win98CD=%CDROM4%
goto 98UP





我的網站:http://mw16.2ya.com/ 我的網誌: http://scrappedblog.blogspot.com/
~
我的Winamp正在播放的歌曲:
2003-6-7 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 3 楼』:  

谢谢你,但是前面加command /f /c 是什么意思能否指点一下?

2003-6-7 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Roy
管理员

專業島民



积分 4869
发帖 1633
注册 2002-12-10
状态 离线
『第 4 楼』:  

是用第二個command.com以/f(自動以Fail作為"Abort, Retry, Fail?"的選項)和/c(指令執行完成後退出第二個command.com)執行if指令



我的網站:http://mw16.2ya.com/ 我的網誌: http://scrappedblog.blogspot.com/
~
我的Winamp正在播放的歌曲:
2003-6-7 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 5 楼』:  

前面加command /f /c 后还是结果不对呀,以下是加command /f /c 后的运行结果,注意此时我的光盘所在的实际盘符是“I”,而不是“K”。看来command /f /c 命令只是让系统忽略了出错提示而已:
CDROM1=I:
CDROM2=J:
CDROM3=K:
C:\>if 3#==5# goto 5CD
C:\>if 3#==4# goto 4CD
C:\>if 3#==3# goto 3CD
C:\>command /f /c if not exist K:\win98\setup.exe goto 2cd

Not ready reading drive K
Abort, Retry, Fail?
Not ready reading drive K
Abort, Retry, Fail?
C:\>set Win98CD=K:

C:\>goto 98UP

C:\>echo 这个电脑上的光驱盘符是:K:
这个电脑上的光驱盘符是:K:


2003-6-7 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 6 楼』:  

难道各位大侠都没解决之道吗?看来只有等总版主Wengier和如是大师晚上出现了,惨!

2003-6-7 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 7 楼』:  

。。。。。。

真是呢。。当光盘不在光驱中(或软驱不在软盘中)的时候,用DOS的任何命令读取光盘/软盘的时候,都会出现“Not ready...”之类的错误的。解决方法是,在用IF NOT EXIST...命令之前先用DREADY等命令判断一下光盘中是否有光盘,然后再进行下一步的操作,例如:

dready %CDROM2%
if errorlevel 1 goto 1cd
if not exist %CDROM2%\win98\setup.exe goto 1cd
set Win98CD=%CDROM2%
goto 98UP

另外,建议将OAKCDROM.SYS改成VIDE-CDD.SYS,以取得更好的效果。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2003-6-7 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 8 楼』:  

谢谢你了,Wengier站长同志! 终于盼到你的出现了.
另外,我想知道dready和VIDE-CDD.SYS的下在地址和详细用法你能赐教吗?

2003-6-8 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 9 楼』:  

好的,DREADY和VIDE-CDD.SYS两个程序在我的MS-DOS 7.10启动盘中都有的,下载地址:
http://newdos.yginfo.net/dosware/mdos71bd.zip

VIDE-CDD.SYS跟OAKCDROM.SYS的用法相同,但强大实用得多。DREADY的用法见上。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2003-6-8 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 10 楼』:  

但是我在上面的批处理文件中用VIDE-CDD.SYS直接替换OAKCDROM.SYS,并用mdos71bd.zip
中的VIDE-CDD.SYS文件复制到该文件夹下,运行后却提示出错。但是换回原来的OAKCDROM.SYS后却又正常了,这是为何?请帮我看看:

CTLOAD Vide-cdd.sys /d:mscd001
MSCDEX.EXE /d:mscd001


2003-6-8 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Wengier
系统支持

“新DOS时代”站长


积分 27734
发帖 10521
注册 2002-10-9
状态 离线
『第 11 楼』:  

提示什么错误呀?我用VIDE-CDD.SYS已经几年了,都没有问题的。



Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

2003-6-8 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 12 楼』:  

我是在Win98下直接测试修改后的文件,不知有没有关系?

2003-6-8 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 13 楼』:  

我再试一下在DOS下的运行情况!

2003-6-8 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 14 楼』:  

在DOS下的运行后死机!看来是VIDE-CDD.SYS不能用Ctload.com从批处理中直接加载。难道它必修从CONFIG.sys中加载或用其他的文件才能调用?我再试试!

2003-6-8 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sglxy
中级用户

MS-DOS爱好者


积分 397
发帖 87
注册 2002-12-15
状态 离线
『第 15 楼』:  

找到原因了原来就是Ctload.com和Vide-cdd.sys不兼容造成的,我已经解决了。我在此真是收益非浅。Wengier 同志,谢谢你和你的论坛!


2003-6-8 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: