![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-26 20:44 |
共 47,815 主题排行 / 349,928 发帖 / 今日 0 篇 / 48,288 会员排行 |
| DOS启动盘 & LOGO技术 (启动盘室) » 关于寻找硬盘最后分区的话题(或困惑) |
| 可打印版本 837 / 3 |
| 第1楼 QEYU | 发表于 2003-11-29 00:00 |
| 中级用户 发帖 42 积分 229 | |
|
关于寻找硬盘最后分区的话题(或困惑) 【基本】:
set lastdrv= for %%i in (z y x w v u t s r q p o n m l k j i h g f e d c) do call chkdrv.bat %%i 其中chkdrv.bat如下: if not %lastdrv%'==' goto _end if %1'==' goto _end if %1==%cdrom% goto _end if %1==%RAMD% goto _end dready %1 /w if errorlevel 2 goto _end set lastdrv=%1 :_end 【无忧启动盘配置】 @ECHO OFF PROMPT $P$G set temp=c:\ set tmp=c:\ SET EXPAND=YES SET DIRCMD=/O:N set LglDrv=27 * 26 Z 25 Y 24 X 23 W 22 V 21 U 20 T 19 S 18 R 17 Q 16 P 15 set LglDrv=%LglDrv% O 14 N 13 M 12 L 11 K 10 J 9 I 8 H 7 G 6 F 5 E 4 D 3 C call setramd.bat %LglDrv% path=%RAMD%:\;%RAMD%:\BAT;%CDROM%:\;%CDROM%:\UCDOS;%CDROM%:\BOOT;A:\;C:\; copy get.exe %RAMD%:\ > NUL copy attrib.exe %RAMD%:\ > NUL copy command.com %RAMD%:\ > NUL copy edit.com %RAMD%:\ > NUL copy format.com %RAMD%:\ > NUL copy fdisk.exe %RAMD%:\ > NUL copy deltree.exe %RAMD%:\ > NUL copy restart.com %RAMD%:\ > NUL copy readme.exe %RAMD%:\ > NUL copy mouse.* %RAMD%:\ > NUL copy xxcopy.exe %RAMD%:\ > NUL rem copy extract.exe %RAMD%:\ > NUL set comspec=%RAMD%:\command.com LH MSCDEX.EXE /D:MSCD000 /L:%CDROM% CDA %CDROM% > NUL IF errorlevel 1 GOTO NEXTCD IF NOT EXIST %CDROM%:\BOOT\TW.EXE GOTO NEXTCD GOTO BOOT :NEXTCD CALL CHCDROM.BAT C D E F G H I J K L M N O P Q R S T U V W X Y Z GOTO BOOT :BOOT LH ZENO.EXE /Q > NUL LH SMARTDRV.EXE > NUL LH KILLER.EXE > NUL LH DOSKEY.COM /B=16 > NUL LH PERUSE.COM /X16 > NUL LH DOSLFN.COM /Z:CP936UNI.TBL > NUL LH KEY.COM PY WB > NUL Set LglDrv= MD %RAMD%:\TEMP XXCOPY /E /H %CDROM%:\BOOT\EBD %RAMD%:\ > NUL %RAMD%: CD \ LH MOUSE.COM > NUL LH FINDCD.EXE > NUL set lastdrv= for %%i in (z y x w v u t s r q p o n m l k j i h g f e d c) do call chkdrv.bat %%i MENU.BAT 【困惑】 为何%lastdrv%有时正确有时错误?为什么不能像%ramd%(或%ramdrv%)和%cdrom%那样准确? |
|
| 第2楼 Wengier | 发表于 2003-11-29 00:00 |
| 系统支持 发帖 10,521 积分 27,736 | |
|
这个话题以前曾讨论过,是用一两条命令轻易实现的,根本就不用这么复杂。
|
|
| 第3楼 QEYU | 发表于 2003-11-30 00:00 |
| 中级用户 发帖 42 积分 229 | |
以下是引用Wengier在2003-11-29 21:46:33的发言: 是用那两条命令,但作到无忧启动盘里找到的却是cdrom。试验时,是用软盘配置启动的,找到的是正确的。但刻录后就错误了。 |
|
| 第4楼 Wengier | 发表于 2003-11-30 00:00 |
| 系统支持 发帖 10,521 积分 27,736 | |
|
上回我说的可不是这几条命令吧!比如说下面的命令不知从何而来的,当然是不行的:
if not %lastdrv%'==' goto _end if %1'==' goto _end if %1==%cdrom% goto _end if %1==%RAMD% goto _end dready %1 /w 另外下面的所有命令用“超级MS-DOS 7.10启动盘”中的那个FINDRAMD代替就行了,而不用这么复杂,而且非常浪费启动时间: set LglDrv=27 * 26 Z 25 Y 24 X 23 W 22 V 21 U 20 T 19 S 18 R 17 Q 16 P 15 set LglDrv=%LglDrv% O 14 N 13 M 12 L 11 K 10 J 9 I 8 H 7 G 6 F 5 E 4 D 3 C call setramd.bat %LglDrv% ... |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |