中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS启动盘 & LOGO技术 (启动盘室) » 请高手解决多光驱加载问题~~~谢~~~
作者:
标题: 请高手解决多光驱加载问题~~~谢~~~ 取消高亮 | 上一主题 | 下一主题
雨浪飘零
中级用户




积分 364
发帖 95
注册 2003-6-15
状态 离线
『楼 主』:  请高手解决多光驱加载问题~~~谢~~~

现在的启动盘在一个光驱时都能很好的工作,但是多光驱时就有问题了~~特别是在用启动盘镜像做光盘引导文件时情况更明显~~~

现把所有疑问写出来,请高手做答,在此先行谢过~~~

问题1:
DOS下如何给每个光驱自动分配盘符?(我用FINDCD试了一下,它好像不能给每个光驱自动分配盘符)

问题2:
有人说”用一个工具检查光驱中是否有光盘,如果没有,将光驱盘符换为下一个驱动器”但是这样的话还是每次只能加载一个光驱,其他的还是不能用~~另这样的软件兄不知哪里能找到?

问题3:
另如果每个光驱中都有盘,只有一个可以引导,那它如何识别到是否可引导?

问题4:
不知道USB光驱是否支持引导?如果支持的话,加载USB驱动后的光驱和IDE光驱同时存在时是否会有所冲突?






2003-6-22 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
szwy
初级用户




积分 129
发帖 10
注册 2002-11-17
状态 离线
『第 2 楼』:  

前面两个问题,只要加载了MSCDEX.EXE都会给每个光驱分配盘符。
第三个问题,哪个光盘中有引导文件,它就从哪个光驱里的光盘引导。
第四个问题,我没有USB光驱,不好作答。





[此贴子已经被作者于2003-6-22 16:09:07编辑过]




2003-6-22 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
雨浪飘零
中级用户




积分 364
发帖 95
注册 2003-6-15
状态 离线
『第 3 楼』:  

谢兄了~~~非常感谢~~~

我再试试~~~

另兄能否讲解一下FINDCD的作用和用法~~~

[此贴子已经被作者于2003-6-22 17:55:50编辑过]




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

“新DOS时代”站长


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

FINDCD的用法呀,看看FINDCD /?吧。。

例如:FINDCD /S



Wengier - 新DOS时代

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

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

2003-6-22 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (29206679)  编辑帖子  回复  引用回复
GOTOmsdos
铂金会员

C++启程者


积分 5154
发帖 1827
注册 2003-7-18
状态 离线
『第 5 楼』:  

我发现有个棘手的问题没有解决:
这两天做启动光盘,其中有个菜单可启动杀毒盘景象,我想更新病毒库,但是那个景象容纳不下了(2.88的软盘景象,已经够大了...),于是想到了启动后通过AUTOEXEC.BAT运行FINDCD,自动切换到光盘.运行光盘上的程序(包括新病毒库),刻录成光盘后放在第一光驱没问题的,但是放在第二光驱就找不到了,因为FINDCD传递的CDROM变量只是光盘盘符,他好象不能判断出有盘的光驱呀...
试了用ERRORLEVEL的方法,但是总是给出
GERENAL ERROR READING DRIVE X:
ABORT, RETRY, FAILURE ?  停在那里
无法自动化!
不知道有什么参数或程序可判断出有盘的光驱?
最好是判断出正在运行的光盘的盘符..

[此贴子已经被作者于2005-2-23 15:19:30编辑过]




2005-2-23 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
JonePeng
金牌会员

D◎$ Fαп


积分 4562
发帖 1883
注册 2004-1-19
来自 广东广州
状态 离线
『第 6 楼』:  

试试在Config.sys加一行:shell=command.com /f /p /e:640。这里/F参数允许DOS对“Abort, Retry, Ignore”进行自动应答。

   此帖被 +14 点积分         点击查看详情   




----====≡≡≡≡ 我的至爱,永远是MSDOS!≡≡≡≡====----
  
2005-2-23 00:00
查看资料  发送邮件  发短消息 网志  OICQ (373343541)  编辑帖子  回复  引用回复
chenhui530
高级用户





积分 772
发帖 273
注册 2004-10-23
状态 离线
『第 7 楼』:  

我想了下根据一个小工具写出了一个批处理把复制到AUTOEXEC.BAT中先指定光驱盘符比如是有三个光区.可以判断哪个光驱中有盘哪个没盘(只作参考不知道能,满足你们的需求吗?)@echo off
set EXPAND=YES
SET DIRCMD=/N
set temp=c:\
set tmp=c:\
path=a:\;z:\
set ramdrive=
xmsdsk 10000 z: /y>nul
set ramdrive=z:
copy command.com z:\>nul
z:
md tmp
md temp
a:
set comspec=z:\command.com
set tmp=z:\tmp
set temp=z:\temp:xianshi
set cdrom=
copy a:\tw.exe z:\>nul
z:
tw /n3 /np>nul
cls
echo.
echo.   
echo                           ========================
echo                            请稍等,程序正在处理中
echo                           ========================
echo.         
echo.copy a:\mscdex.exe z:\>nul
LH z:\MSCDEX.EXE /D:mscd000 /D:mscd001 /D:mscd002 /L:w >nul
copy a:\cda.exe z:\>nul
z:
cda w:>z:\cdw.txt
find "not" z:\cdw.txt>nul
if not errorlevel 1 goto cdx
set cdrom=w
goto next:cdx
cda x:>z:\cdx.txt
find "not" z:\cdx.txt>nul
if not errorlevel 1 goto cdy
set cdrom=x
goto next:cdy
set cdrom=y:next
copy a:\part.exe z:\>nul
part.exe -y>nul
del part.exe>nul
lh doskey>nul
ctmouse>nul
smartdrv>nul :menu
z:
part.bat



http://www.msfans.net/bbs/
2005-2-23 00:00
查看资料  发送邮件  发短消息 网志  OICQ (77740821)  编辑帖子  回复  引用回复
GOTOmsdos
铂金会员

C++启程者


积分 5154
发帖 1827
注册 2003-7-18
状态 离线
『第 8 楼』:  

多谢JONEPENG的提示! 问题已解决了,关键是/F参数
开始用AUTOEXEC.BAT  COMMAND /F /C 开始可以的,也许是这种方式占内存的因素,后来就不起作用了,改用 CONFIG.SYS  SHELL=的方式就没问题了,也许是这种方式占内存较少,比较底层吧?
解决了烦人的GERENAL FAILURE READING FROM X: 提示
就好办了!
改写启动景象的AUTOEXEC.BAT 如下:
@ECHO OFF
lh shsucdx /d:dosrav
findcd /s
rem command /f /c
if exist %cdrom1%\rising\ravdos.exe goto cd1
if exist %cdrom2%\rising\ravdos.exe goto cd2
if exist %cdrom3%\rising\ravdos.exe goto cd3
if exist %cdrom4%\rising\ravdos.exe goto cd4
:cd1
%cdrom1%
goto end
:cd2
%cdrom2%
goto end
:cd3
%cdrom3%
goto end
:cd4
%cdrom4%
goto end
:end
cd\rising
lh smartdrv
lh ctmouse
PROMPT $p$g
CLS
ECHO.
ECHO       ************************************************************************
ECHO.   
ECHO                It's starting "Rising AntiVirus Software <2005>" now !
ECHO                     Copyright by Beijing Rising Tech. Co., Ltd.
ECHO                                     1998-2005
ECHO.  
ECHO       ************************************************************************
RAVDOS.EXE

用ERRORLEVEL 好象不行的,因为用了COMMAND /F的参数后,当找不到光盘时,系统会认为正常的,ERRORLEVEL 仍为0.
CONFIG.SYS:
dos=high,umb
device=himem.sys
devicehigh=vide-cdd.sys /d:dosrav
shell=command.com /f /p /e:640
BUFFERS=22,0
FILES=40
把光驱驱动和FINDCD放在景象中
再把瑞星DOS杀毒文件和SMARTDRV CTMOUSE放在光盘RISING目录中就行了!
解决的很完满! 因为不仅能判断出哪个光驱有盘,而且还能找到正在运行的光盘所在的光驱!
重要的文件在下面:
vide-cdd.sys  shsucdx.exe  findcd.exe  ctmouse.exe
打开附件

[此贴子已经被作者于2005-2-24 16:07:59编辑过]




2005-2-24 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
GOTOmsdos
铂金会员

C++启程者


积分 5154
发帖 1827
注册 2003-7-18
状态 离线
『第 9 楼』:  

我遇到了一个EASYBOOT奇怪的BUG!
开始,光盘子目录为RAVDOS,其中的程序是RAVDOS.EXE, 同名,还有VIDE-CDD.SYS /D:RAVDOS   还有 SHSUCDX /D:RAVDOS
以上的名都是RAVDOS,  好了,BUG就来了!
运行后,其他所有的文件都正常,惟独找不到RAVDOS.EXE 这个文件!! (DIR它的上层目录有他的大名的,但是DIR /A RAVDOS.EXE 就没有了!!!当然程序也不能运行的)
你说怪不怪? 后来化了九牛二虎之力终于查出了这个原因!! 名称不同就没问题了!!

[此贴子已经被作者于2005-2-24 12:12:45编辑过]




2005-2-24 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: