无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 57656|回复: 54

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

[复制链接]
发表于 2005-4-6 17:22:21 | 显示全部楼层 |阅读模式
[这个贴子最后由gmy在 2005/04/07 07:42am 第 1 次编辑]

为使大家深入讨论DOS技术,本版主会经常提出一些有难度的问题,回答正确的给予加威望等形式的奖励,并且原贴解固加精(解固是为了给下一题目让地方,加精是为了以后便于查阅)
DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?
    我们在制作光盘时经常会遇到定位光盘文件的问题,有人会说,那还不容易,用FINDCD检测,再用%CDROM%:\C.GHO定位,其实这种方法只能对付第一光驱,第二光驱就无能为力了,你控制不了使用者把光盘放到哪个光驱里,是吗?所以,请大家解决一下。
二楼gotomsdos回答基本正确,威望加1  (本版主只能有这一点奖励权力,SORRY)
发表于 2005-4-6 20:05:50 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

[这个贴子最后由gotomsdos在 2005/04/06 08:08pm 第 1 次编辑]

首先在CONFIG.SYS中加载光驱,并 SHELL=COMMAND.COM /F /P /E:640 抑制ABORT,RETRY,FAIL出错提示
再在AUTOEXEC.BAT中加入:
findcd /s  (/s 能给多个光驱多个变量...)
if exist %cdrom1%\sound\sbinit.com goto cd1  sound\sbinit.com(光盘一文件)
if exist %cdrom2%\sound\sbinit.com goto cd2
if exist %cdrom3%\sound\sbinit.com goto cd3
if exist %cdrom4%\sound\sbinit.com goto cd4
:cd1
%cdrom1%
set romcd=%cdrom1%
goto end
:cd2
%cdrom2%
set romcd=%cdrom2%
goto end
:cd3
%cdrom3%
set romcd=%cdrom3%
goto end
:cd4
%cdrom4%
set romcd=%cdrom4%
goto end
:end
运行程序...
回复

使用道具 举报

发表于 2005-4-6 21:02:13 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

加分没用,加钱还差不多...
回复

使用道具 举报

 楼主| 发表于 2005-4-6 22:51:58 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

re:gotomsdos   做的不错.加威望.
回复

使用道具 举报

发表于 2005-4-6 23:35:48 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

嗯.楼主的这个建议不错.
回复

使用道具 举报

 楼主| 发表于 2005-4-7 07:36:29 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

re:gotomsdos
还有一个不足的地方:
CONFIG抑制ABORT,RETRY,FAIL出错提示 的方法  是否也殃及 FORMAT 等危险的但又需要手工选择判断选择错误提示的命令,因为它是全局变量啊!
回复

使用道具 举报

发表于 2005-4-7 09:21:00 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

   我很想知道这一点。
  我一个刻录机(主盘),一个光驱(从盘)。光盘启动时,只能放在主盘,放在从盘则不读,直接进入硬盘。任何盘皆如此,包括各种光启的WINDOWS安装盘。(以前安装系统,看到刻录机一个劲儿地响,心疼啊)。
  要如何设置,才能自动搜索到第二光驱以便读盘运行?
  
回复

使用道具 举报

发表于 2005-4-7 17:24:16 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

看了这一贴,确实学到了一点点东西。
回复

使用道具 举报

发表于 2005-4-7 18:56:48 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

"只能放在主盘,放在从盘则不读,直接进入硬盘。任何盘皆如此,"
这说法不对吧?
我两个光驱,放在从盘照样可以启动啊!
gmy:
是不是抑制ABORT,RETRY,FAIL出错提示后,在运行COMMAND 加什么参数,恢复到一般状态吧? 什么参数呢?

回复

使用道具 举报

发表于 2005-4-8 07:25:41 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

请问一下:
“sound\sbinit.com”文件是不是光盘中固有的?
回复

使用道具 举报

发表于 2005-4-8 12:00:53 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

下面引用由cq-bbcyb2005/04/08 07:25am 发表的内容:
请问一下:
“sound\sbinit.com”文件是不是光盘中固有的?
当然不是,你自己可能指定别的文件。
回复

使用道具 举报

 楼主| 发表于 2005-4-8 14:36:04 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

re:gotomsdos
让COMMAND回复正常参数不容易,但可以用释放内存小工具 mark 和 release,
清除最后加载的command.com
回复

使用道具 举报

发表于 2005-4-8 20:40:55 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

这么不规范的回答竟然也给加精了,晕哦~~~
既然并不限制使用第三方的工具(findcd本来就是第三方的工具,gotomsdos应该使用的是Wengier版的findcd),那么为什么不试用一下Bart的findcd或者Wengier版的findcd + Horst 的dready程序(当然还有一个cda)呢?
有鉴于此,gmy版主的主意虽然不错,但请在判断答案的标准上不要独自做主,因为太有失公允。
回复

使用道具 举报

发表于 2005-4-9 00:07:46 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

我是这样判断的:
==Config.Sys==
Device=HiMem.Sys /TestMem:Off
Device=OAKCDROM.SYS /D:MSCD000
==AutoExec.Bat==
@Echo Off
Goto Main
:Main
MSCDEX.Exe /D:MSCD000 /L:X       ;定第一光驱盘符为X,第二为Y,第三为Z,毕竟很少有人使用到3个或者更多光驱
if Exist X:\Folder\FileName.Ext Goto CD_X
if Exist Y:\Folder\FileName.Ext Goto CD_Y
if Exist Z:\Folder\FileName.Ext Goto CD_Z
Goto End
:CD_Z
....
Goto End
:CD_Y
....
Goto End
:CD_X
....
Goto End
:End
回复

使用道具 举报

 楼主| 发表于 2005-4-9 00:20:00 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

re:Climbing
加入dready的方案要比command /f 合理.
回复

使用道具 举报

发表于 2005-4-9 00:30:03 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

我的答案没有使用MS-DOS以外的工具哦
回复

使用道具 举报

 楼主| 发表于 2005-4-9 10:45:03 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

[这个贴子最后由gmy在 2005/04/11 11:25pm 第 1 次编辑]

re: magictek   
你的错误在于,没有解决出现Abort,Retry,Fail 自动选择,否则必须手工输入A,R,F才能继续,这是我们不想看到的。

回复

使用道具 举报

发表于 2005-4-10 06:23:13 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

学习过了,谢谢,顶!
回复

使用道具 举报

发表于 2005-4-20 09:05:16 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

用dready来判断
回复

使用道具 举报

发表于 2005-4-21 18:39:53 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

[这个贴子最后由gotomsdos在 2005/04/21 06:47pm 第 1 次编辑]

听说BART的FINDCD 不支持多光驱?
试了试DREADY,也不错,但是他不能改变系统COMMAND 的属性,启动光盘或附带程序是要求全自动的,尤其对绝大多数菜鸟是必要的,所以COMMAND /F /P能达到这要求...
我想也没有太大危险,因为程序在做危险性操作之前当然肯定要提示的...
没用COMMAND /F /P的正常状态给出的诸如"ABORT,RETRY,FAIL ?"没有太大作用,反而阻止了自动化....
有一次,我用了一个工具盘,启动后选了一个运行了,一会儿停在那里,我一看,是一个无伤大雅的小警告,按了回车后,就没有执行了,直接回到了DOS! 对于懂一点DOS的还能用DIR 查看一下程序名,再手动运行,但对于绝大多数菜鸟就觉得云里雾里了...还以为出了什么大问题,或者认为你这个东东不行..
不过,如有谁找到更好的替代方法,就说出来吧...

回复

使用道具 举报

发表于 2005-4-25 14:45:55 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

下面引用由66182005/04/08 12:00pm 发表的内容:
当然不是,你自己可能指定别的文件。
FOR %%i IN (D E F G H I J K L M N O P Q R S T U V W X Y Z) DO IF EXIST %%i:\sound\sbinit.com SET CDROM=%%i:
回复

使用道具 举报

发表于 2005-4-26 10:15:24 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

用我以前做的func.exe可以判断的。
回复

使用道具 举报

 楼主| 发表于 2005-4-26 13:16:44 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

pk4321  就是  FUNC  的作者吧,久仰了。
另外,我以前也做过FINDCD.BAT(丢了),基本思路是,通过MSCDEX(或同类工具)产生TXT报告,搜索这一报告的特定位置,可判断出光驱的数目和光驱的盘符。
回复

使用道具 举报

发表于 2005-4-28 16:15:58 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

我习惯用cda,而且我使用的findcd是Wengier的版本。
回复

使用道具 举报

发表于 2005-5-24 01:42:26 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

[这个贴子最后由xusen在 2005/06/03 12:20pm 第 7 次编辑]

用 IF EXIST drive:\path\filename 如果盘符(drive:)不存在,会出现错误提示。
判断多光驱是否有光盘,如存在则赋值给变量
所需工具 "findcd.exe" "dready.com"
----------------------------
@echo off
findcd /s
if %cdrom1%#==# goto exit
echo @echo off>ifcd.bat
echo :next>>ifcd.bat
echo shift>>ifcd.bat
echo if %%1#==over# goto end>>ifcd.bat
echo dready %%1 /w>>ifcd.bat
echo if errorlevel 2 goto next>>ifcd.bat
echo yescd=%%1 %%yescd%%>>ifcd.bat
echo goto next>>ifcd.bat
echo :end>>ifcd.bat
if not %cdrom1%#==# set cd=%cdrom1%
if not %cdrom2%#==# set cd=%cdrom2% %cd%
if not %cdrom3%#==# set cd=%cdrom3% %cd%
if not %cdrom4%#==# set cd=%cdrom4% %cd%
if not %cdrom5%#==# set cd=%cdrom5% %cd%
call ifcd.bat start %cd% over
:exit
----------------------------
运行结果:有光盘片的盘符赋值给变量"yescd"(如有2张光盘片各在d: 和 e: 则yescd=e: d:)
回复

使用道具 举报

 楼主| 发表于 2005-5-24 08:34:04 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

dready 在我的电脑上用不了,不知为何?
回复

使用道具 举报

发表于 2005-5-24 08:42:13 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

在WIN2000下没问题XP就不行,DOS没问题
回复

使用道具 举报

发表于 2005-5-24 08:45:36 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

[这个贴子最后由xusen在 2005/05/24 08:46am 第 1 次编辑]

我自己做的启动盘基本都用这个判断,所以无论软盘、光驱、U盘、映像盘都可操作定位系统
回复

使用道具 举报

 楼主| 发表于 2005-5-24 10:32:33 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

dready的附件上传一个吧。
回复

使用道具 举报

发表于 2005-5-24 10:41:42 | 显示全部楼层

DOS有奖问答No1:怎么判断多光驱中哪个光驱有光盘?

下面引用由gmy2005/05/24 10:32am 发表的内容:
dready的附件上传一个吧。
原文件吗?Wengier站长那就有或我盘里有,用RAR解压
批处理照样
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 04:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表