中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-10-27 18:39
共 47,815 主题排行 / 349,928 发帖 / 今日 0 篇 / 48,289 会员排行
DOS启动盘 & LOGO技术 (启动盘室) » Climbing大大,关于你发表的一篇帖子,请指教!
可打印版本  1,211 / 4
第1楼 xsc 发表于 2004-09-26 00:00
初级用户 发帖 16 积分 157
Climbing大大,关于你发表的一篇帖子,请指教!
新版本的findcd.exe支持多光驱的,在启动光盘的autoexec.bat中加入这些命令
findcd /s > nul
if "%cdrom%"=="1" set path=%path%;%cdrom1%:\;
if "%cdrom%"=="2" set path=%path%;%cdrom1%:\;%cdrom2%:\;
if "%cdrom%"=="3" set path=%path%;%cdrom1%:\;%cdrom2%:\;%cdrom3%:\;
set cdrom=
for %%I in (%cdrom1%,%cdrom2%,%cdrom3%) DO if exist %%I\光盘上的某目录\某文件 set cdrom=%%I
----------------------------------------
问题来了:
例如我有2个光驱,分别加载到D:和E:
我把光盘插入D:光驱
当执行到"DO if exist %%I\光盘上的某目录\某文件"这一句时,会出现
read failed from drive E:
Abort,Retry,Fail?
(插入到E:,会提示read failed from D
道理很明显,因为if exist这个判断程序会去读取所有的光区.而E:里是空的.
但是没有这个判断就不能自动识别双光区,该如何做才能避免这个错误提示呢?
第2楼 Climbing 发表于 2004-09-26 00:00
铂金会员 发帖 2,753 积分 6,964 来自 河北保定
兄弟,到无忧论坛看回复吧。
第3楼 Wengier 发表于 2004-09-26 00:00
系统支持 发帖 10,521 积分 27,736
呵呵,那個findcd程序是我編寫的。前面加上dready命令來判斷的話就不會出現什麼Abort, Retry, Fail的錯誤了。
第4楼 xsc 发表于 2004-09-27 00:00
初级用户 发帖 16 积分 157
该怎么改呢?我实在不知道怎么搞啊。errorlevel的参数也不知道,请Wengier帮忙修改一下好吗?
findcd /s > nul
set bootcd=
for %%I in (%cdrom1%,%cdrom2%) DO dready %%I IF NOT ERRORLEVEL 1 set bootcd=%%I

第5楼 Climbing 发表于 2004-09-27 00:00
铂金会员 发帖 2,753 积分 6,964 来自 河北保定
我写的一个类似的批处理,你稍加修改一下应该可以解决问题:xyfpath.bat:用来设置搜索路径:

IsReady.bat:用来判断某个盘符是否准备好:
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023