| 
 | 
3#
 
 
 楼主 |
发表于 2005-4-9 20:20:29
|
只看该作者
 
 
 
CONFIG.SYS和AUTOEXEC.BAT文件的多重配置
[这个贴子最后由gmxq在 2005/04/09 08:30pm 第 2 次编辑] 
 
附: 
  DOS 6.22下的多重配置菜单 
  一、AUTOEXEC.BAT文件中的内容如下: 
@ECHO OFF 
PROMPT $P$G 
LH C:\DOS6\DOSKEY.COM /BUFSIZE=1024 
GOTO %CONFIG% 
:AA 
CLS 
@ECHO $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ 
@ECHO * * * * 
@ECHO ! ! WARNING: NO RUN SMARTDRV ! ! 
@ECHO * * * * 
@ECHO # # # @ @ # # # & & & & & & & & & & & & # # # @ @ # # # 
@ECHO * * * * 
@ECHO ! ! WARNING: NO RUN SMARTDRV ! ! 
@ECHO * * * * 
@ECHO $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ 
ECHO\ 
ECHO>NUL 
ECHO/ 
GOTO END 
:AB 
SET BLASTER=A220 I5 D1 T4 
SET SOUND16=C:\OPTI931 
PATH C:\OPTI931;%PATH% 
C:\OPTI931\SNDINIT /B 
CLS 
@ECHO $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ 
@ECHO * * * * 
@ECHO ! ! WARNING: NO RUN SMARTDRV ! ! 
@ECHO * * * * 
@ECHO # # # @ @ # # # & & & & & & & & & & & & # # # @ @ # # # 
@ECHO * * * * 
@ECHO ! ! WARNING: NO RUN SMARTDRV ! ! 
@ECHO * * * * 
@ECHO $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ 
ECHO/ 
ECHO+ 
ECHO\ 
GOTO END 
:BA 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
ECHO>NUL 
GOTO END 
:BB 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
SET BLASTER=A220 I5 D1 T4 
SET SOUND16=C:\OPTI931 
PATH C:\OPTI931;%PATH% 
C:\OPTI931\SNDINIT /B 
ECHO+ 
GOTO END 
:CA 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
ECHO\ 
GOTO END 
:CB 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
SET BLASTER=A220 I5 D1 T4 
SET SOUND16=C:\OPTI931 
PATH C:\OPTI931;%PATH% 
C:\OPTI931\SNDINIT /B 
ECHO/ 
GOTO END 
:DA 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
ECHO/ 
GOTO END 
:DB 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
SET BLASTER=A220 I5 D1 T4 
SET SOUND16=C:\OPTI931 
PATH C:\OPTI931;%PATH% 
C:\OPTI931\SNDINIT /B 
ECHO\ 
GOTO END 
:E 
LH C:\SAMSUNG\MSCDEX.EXE /D:MSCD000 /M:12 /V /E 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
SET BLASTER=A220 I5 D1 T4 
SET SOUND16=C:\OPTI931 
PATH C:\OPTI931;%PATH% 
C:\OPTI931\SNDINIT /B 
ECHO>NUL 
GOTO END 
:F 
LH C:\SAMSUNG\MSCDEX.EXE /D:MSCD000 /M:12 /V /E 
C:\DOS6\SMARTDRV.EXE 2048 512 /Q 
ECHO+ 
GOTO END 
:END 
PATH C:\DOS6;C:\CCDOS;C:\CCED;C:\UCDOS;D:\BAT;D:\TOOLS;D:\TOOLS\HD20 
SET TEMP=C:\TEMP 
  二、CONFIG.SYS文件中的内容如下: 
[MENU] 
SUBMENU=A,NOTHING_____(NO SMARTDRV) 
SUBMENU=B,HIMEM 
SUBMENU=C,XMS_NOEMS 
SUBMENU=D,EMS 
MENUITEM=E,CD-ROM 
MENUITEM=F,CD-ROM_____(NO SOUND) 
MENUDEFAULT=E,3 
MENUCOLOR=07,0 
[COMMON] 
FILES=40 
BUFFERS=40,0 
LASTDRIVE=J 
FCBS=4,0 
STACKS=9,256 
[A] 
MENUITEM=AA,NOTHING_____(NO SMARTDRV) 
MENUITEM=AB,NOTHING AND SOUND_____(NO SMARTDRV) 
[AA] 
[AB] 
DEVICE=C:\OPTI931\CDSETUP.SYS /T:X 
[B] 
MENUITEM=BA,HIMEM 
MENUITEM=BB,HIMEM AND SOUND 
[BA] 
DEVICE=C:\DOS6\HIMEM.SYS/TESTMEM:OFF 
DOS=HIGH,UMB 
[BB] 
INCLUDE BA 
DEVICE=C:\OPTI931\CDSETUP.SYS /T:X 
[C] 
MENUITEM=CA,XMS_NOEMS 
MENUITEM=CB,XMS_NOEMS AND SOUND 
[CA] 
DEVICE=C:\DOS6\HIMEM.SYS/TESTMEM:OFF 
DEVICE=C:\DOS6\EMM386.EXE NOEMS 
DOS=HIGH,UMB 
[CB] 
INCLUDE CA 
DEVICE=C:\OPTI931\CDSETUP.SYS /T:X 
[D] 
MENUITEM=DA,EMS 
MENUITEM=DB,EMS AND SOUND 
[DA] 
DEVICE=C:\DOS6\HIMEM.SYS/TESTMEM:OFF 
DEVICE=C:\DOS6\EMM386.EXE RAM 
DOS=HIGH,UMB 
[DB] 
INCLUDE DA 
DEVICE=C:\OPTI931\CDSETUP.SYS /T:X 
[E] 
INCLUDE F 
DEVICE=C:\OPTI931\CDSETUP.SYS /T:X 
[F] 
DEVICE=C:\DOS6\HIMEM.SYS/TESTMEM:OFF 
DEVICE=C:\DOS6\EMM386.EXE RAM 
DEVICEHIGH=C:\SAMSUNG\CDROM.SYS /D:MSCD000 /I:0 /V 
DOS=HIGH,UMB 
[COMMON] 
 
 
 
 
 
 
 
 
 
   
给微机编一个多重配置的启动文件是初学者很希望做的事,但苦于不会编,看书有时又不知其所以然。在这里,笔者以初学者的思路来讲述编制多重配置启动文件的方法,想必初学的朋友一看就会。  
先编多重配置的config.sys文件。假如机器的原config.sys文件是:(右面中文为解释) 
DEVICE=C:\DOS\HIMEM.SYS (加载扩展内存访问管理程序) 
DEVICE=C:\DOS\EMM386.EXE RAM (加载扩充内存管理程序) 
BUFFERS=30,4 (设置缓冲区,依内存大小而定,一般设为30) 
FILES=30 (设置允许同时打开的文件的最大数) 
DOS=UMB,HIGH (将DOS加载到上位内存或高端内存) 
DEVICEHIGH/L:1,13920=C:\ECS\ECSCDAT.SYS/D:ECSCD001  
(加载光驱的驱动程序) 
SHELL=C:\DOS\COMMAND.COM C:/P (指定DOS外壳) 
STACKS=9,256 (设置堆栈数) 
下面以这个config.sys文件为基础,编辑一个多重配置的config.sys文件。基本思路是先编一个菜单,菜单的项目你需要几项就可以编几项,然后再根据各个项目需要的配置逐项编配(简便的方法是以原config.sys文件为基础,整段整句进行选编),基本格式是菜单名下面为菜单项,每一内容为一行,段与段之间空一行。为了让初学者更为明了,本例采用常用的几个系统作为例子。(后面中文为解释) 
[menu] [菜单] 
menuitem=DOS,The configuration for DOS  
菜单项名DOS,为DOS配置 
menuitem=Win,The configuration for WINDOWS  
菜单项名WIN,为WINDOWS配置 
menuitem=UCDOS,The configuration for UCDOS  
菜单项名UCDOS,为UCDOS配置 
submenu=YX,Da,Xiao,The configuration for YX  
子菜单名游戏,大,小,为游戏配置 
menudefault=Win,10 默认菜单 
Win,等待时间10秒(自定) 
空一行 
[common] [公用命令] 
BUFFERS=30,4 
FILES=30 
FCBS=4,0 
SHELL=C:\DOS\COMMAND.COM C:/P 
STACKS=9,256 
空一行 
[DOS] DOS菜单项内容 
DEVICE=C:\DOS\HIMEM.SYS 使用DOS时的配置 
DEVICE=C:\DOS\EMM386.EXE RAM 
DEVICEHIGH/L:1,13920=C:ECS\ECSCDAT.SYS/D:ECSCD001 (加载光驱) 
[Win] Win菜单项内容 
DEVICE=C:\DOS\HIMEM.SYS 使用Windows的配置 
DEVICE=C:\DOS\EMM386.EXE noems 
(因为Windows可直接管理扩充内存,故设noems) 
DEVICEHGH /L:1,13920=C:\ECS\ECSCDAT.SYS/D:ECSCD001 (加载光驱) 
[UCDOS] 
UCDOS菜单项内容(使用UCDOS时的配置,由于UCDOS可以自己配置内存环境,故可设可不设) 
(空一行) 
[YX] 游戏菜单项内容 下面还有子菜单 
menuitem Da,The configuration for DA YX  
子菜单项名Da,为大游戏配置 
menuitem Xiao,The configuration for Xiao yx 
子菜单项为Xiao,为小游戏配置 
menudefault Xiao,8 默认子菜单,Xiao,等待8秒 
[Da] 为大游戏配置 
DEVICE=C:\DOS\HIMEM.SYS 
DEVICEHIGH/L:1,13920=C:\ECS\ECSCDAT.SYS/D:ECSCD001 
空一行 
[Xiao] 为小游戏设置 
DEVICE=C:\DOS\HIMEM.SYS 
DEVICE=C:\DOS\EMM386.EXE RAM 
DEVICEHIGH /L:1,13920=C:\ECS\ECSCDAT.SYS/D:ECSCD001 (完) 
由上可知,多重配置的config.sys实际就是将多个config.sys并列在一起,而这些config.sys实际上是由一个config.sys演变出来的,且又是紧紧围绕如何对内存进行配置的。只不过前面编了一个可选的菜单,而后面的则是为了少用文字,将各项的共同部分提了出来作为一小段共同命令ap[common],其它略有不同的才做了分别编配,需注意的是,“菜单”和“菜单项”必须用固定语句[menu]和“menuitem”,公共命令也须用固定语句[common],否则机器会不认识。菜单项目名字可以自取,以直观为好,需用方括符括上,菜单项可多可少,也可不用子菜单项,视具体要求而定。 
接下来再编辑与之相对应的Autoexec.bat文件。即如果在Config.sys中选择了某项,则Autoexec.bat也只执行对应项的内容。假如机器的原Autoexec.bat文件是: 
@ECHO OFF (加载过程显开关) 
C:\WINDOWS\ESSCFG.EXE /I:7 /D:1 (载入声卡驱动程序) 
C:\WINDOWS\ESSVOL.EXE /V:8 /L:8/W:8 /M:0 /C:8 /S:8 
(载入音响图形界面) 
LH C:\DOS\AMOUSE\AMOUSE /2 (装入鼠标) 
LH /L:0;1,46992 /S C:\WINDOWS\SMARTDRV.EXE 1024 512 /Q 
(装入磁盘加速驱动程序) 
LH /L:1,36224 C:\ECS\MSCDEX /V/D:ECSCD001 /M:10 
(装入光驱管理程序) 
PATH C:\DOS;C:\WINDOWS;C:\UCDOS;C:\YLDICT 
(指定查找文件的路径及次序) 
SET TEMP=C:\TEMP (指定临时文件放置的位置) 
下面以这个Autoexec.bat文件为基础,编一个与config.sys相对应的多重Autoexec.bat文件。(第一段依然为共同内容) 
@ECHO OFF 
PATH C:\DOS;C:\WINDOWS;C:\WIN31;C:\UCDOS;C:\YLDICT 
SET TEMP=C:\TEMP 
GOTO%config% (此句为固定语句,意为转到config.sys对应的:项上) 
:DOS 
(如果选择了DOS,DOS加载的内容如下。注意前面的冒号:一定不能忽略) 
C:\WINDOWS\ESSCFG.EXE/I:7 /D:1 
C:\WINDOWS\ESSVOL.EXE/V:8/L:8/W:8/M:0/C:8/S:8 
LH C:\DOS\AMOUSE\AMOUSE/2 
LH /L:O;1,46992/S C:\DOS\SMARTDRV.EXE 2048 512 /Q 
GOTO END (此句也为固定语句,意为运行到此结束) 
:Win (同上) 
C:\WINDOWS\ESSCFG.EXE/I:7 /D:1 
C:\WINDOWS\ESSVOL.EXE/V:8/L:8/W:8/M:0/C:8/S:8 
rem /L:O;1,46992 /S C:\WINDOWS\SMARTDRV.EXE 1024 512/Q 
LH/L:1,36224 C:\ECS\MSCDEX/V/D:ECSCD001 /M:10 
GOTO END (此句也为固定语句,即运行到此结束) 
:UCDOS (如果选择进入UCDOS,即执行:UCDOS的内容。) 
LH C:\DOS\AMOUSE\AMOUSE/2 
Call UCDOS (呼出UCDOS批处理命令) 
GOTO END 
:Da (如果希望玩大游戏,选择YX后再选择此即可) 
C:\WINDOWS\ESSCFG.EXE/I:7/D:1 
C:\WINDOWS\ESSVOL.EXE/V:8/L:8/W:8/M:0/C:8/S:8 
LH/L:1,36224 C:\ECS\MSCDEX/V/D:ECSCD001 /M:10 
LH C:\DOS\AMOUSE\AMOUSE/2 
GOTO END 
空一行 
:Xiao (如果只是玩小游戏,选择YX后再选择此即可) 
C:\WINDOWS\ESSCFG.EXE /I:7 /D:1 
C:\WINDOWS\ESSVOL.EXE /V:8/L:8/W:8/M:0/C:8/S:8 
LH/L:1,36224 C:\ECS\MSCDEX/V /D:ECSCD001 /M:10 
LH/L:0;1,46992 /s C:\DOS\SMART DRV.EXE 1024/Q 
LH C:\DOS\AMOUSE\AMOUSE/2 
GOTO END 
:END (此句也为固定语句,即到此全部结束) 
由此可见,多重配置的config.sys和Autoexec.bat是一一对应的,只要明白了其中几个固定语句的意义以及基本格式就很容易编制这两个文件。文件编好后重新启动机器,会出现4个菜单供你选择。 
1.The configuration for DOS 
2.The configuration for WINDOWS 
3.The configuration for UCDOS 
4.The configation for YX 
menudfault Win,10 
机器同时以10秒为限倒计时,倘若你10秒钟未作出选择,机器将自动进入到默认的系统中。(此例默认为Windows) 
上例配置较为简单,主要是授以原则和方法,也可以把其作为一公式。待你对内存管理和文件运行的环境有了一定的运用能力后,还可以编制得更精细一些。 
 
  
我见到很多网战都有做DOS超酷启动盘……可不知道怎么做的~自己也很想做一个。。。昨天看见狼上线!2话不说……抄家伙~呵呵 
教了我一个晚上才教会……大概因为我比较笨吧~现在拿来和大家分享一下 
我还是先把我做的批处理写一下吧~ 
@echo off  
PROMPT $P$G$G$G$G 
:main 
echo MENU 
echo 1.ghost 
echo 2.diskgen 
echo 3.sfdisk 
echo 4.other 
echo 5.exit 
choice /c:12345 Please Select...   
if errorlevel 5 goto End 
if errorlevel 4 goto other 
if errorlevel 3 goto sfdisk 
if errorlevel 2 goto diskgen 
if errorlevel 1 goto ghost 
:ghost 
cls  
ghost 
goto main 
:diskgen 
cls 
diskgen 
goto main 
:sfdisk 
cls 
sfdisk 
goto main 
:dir 
cls 
dir 
goto main 
:ver 
cls 
echo Ver:1.0 author:seadogs 
goto main 
:other 
cls 
echo submenu2 
echo 1.about 
echo 2.A filelist 
echo 3.startmain 
choice /c:123 Please Select...  
if errorlevel 3 goto main 
if errorlevel 2 goto dir 
if errorlevel 1 goto ver 
:End 
下面我开始解释了~最基本的是ECHO……这是个内部命令,可以在DOS提示符下查看帮助 
ECHO OFF是不显示下面的东西~自己去试试就知道了。。。但是对你操作的结果他不会影响~而且直接用ECHO显示的东西他不会隐藏掉。。。这个东西自己试一下就知道了~~想当初我也是自己试的 
如果直接使用ECHO之后空格跟一些东西的话他就会显示你后面所输入的东西 
@——为什么要加@呢?@是做单行隐藏的~和ECHO的效果不同…… 
你可以先试试办ECHO OFF 
之后再试试办@ECHO OFF 
后者连ECHO OFF都不会显示~~ 
下面是PROMPT $P$G$G$G$G这一句 
这句也是个DOS命令,可以在DOS提示符上键入PROMPT /?来查看帮助 
PROMPT的作用就是可以改变提示符的样子 
$P代表当前路径~~$G就代表>符 
连起来就是当前路径后面增加4个> 
如:在C盘下的话就是C:\>>>> 
更多的用法大家可以查看帮助~很酷的 
:main是什么意思呢?好象有好多带:号的 
是的带:的表示关键字!因为后面就要使用GOTO语句 
那就先解释一下GOTO语句吧 
学过编程的朋友都应该知道这个语句。。。GOTO的意思顾名思义~~就是到一个什么什么的位置 
GOTO的用法大家也可以查看帮助得到~和上面的一样~都是DOS命令 
GOTO需要通过关键字来确定程序将要跳到那里 
而:就是关键字的表示符 
如: :mian 
那关键字就是main了 
在调用的时候就使用goto main就可以了~是不是很简单 
接下来看到的是: 
echo MENU 
echo 1.ghost 
echo 2.diskgen 
echo 3.sfdisk 
echo 4.other 
echo 5.exit 
这5行用于显示 
在DOS下就会看到这个菜单了 
choice /c:12345 Please Select...   
if errorlevel 5 goto End 
if errorlevel 4 goto kkk 
if errorlevel 3 goto sfdisk 
if errorlevel 2 goto diskgen 
if errorlevel 1 goto ghost 
这里是这个批处理的精华的地方了~~他用到了choice这个命令 
大家可以看看字典~choice是选择的意思 
同样~这个词也可以在DOS下很方便的查看帮助 
/C后面跟的就是指定只能输入的字符 
Please Select...是提示信息~也就是请选择1、2、3、4、5其中的一个 
注意:这是不按1、2、3、4、5或中止批处理的话是不能继续下去的 
大家可以试试~一试你就明白了 
if errorlevel 5 goto End 
解释一下这一句……意思就是如果按下了5就跳到END关键字处 
看一下整个批处理就知道了~END在最后~跳到那里程序就会结束了 
其他的都一样,这是if errorlevel配合GOTO的~ 
if errorlevel也可以配合别的语句。。。如:if errorlevel 5 goto echo 12345 
这样的话在选择5之后就会显示12345之后继续执行下面的东西 
最后是CLS命令 
这个很简单的了~也是一个命令……可以在帮助中找到你要找的! 
他是一个清屏命令运行之后你现在屏幕上的信息将会清空 
好了~基本说完了……再串一下 
本批处理的作用大概效果是这样的 
运行批处理会出现菜单 
MENU 
1.ghost 
2.diskgen 
3.sfdisk 
4.other 
5.exit 
Please Select...[1、2、3、4、5]? 
下面进行选择……如果选择1就会运行GHOT 
2是DISKGEN 
3是SFDISK 
4是OTHER 
5是退出 
很简单的……当然~这些软件都要在同路径下面 
当按下1时会执行GHOST关键字里的东西 
:ghost 
cls  
ghost 
goto main 
也就是清除屏幕上的东西……之后运行GHOST 
等你退出GHOST的时候他会跳回MAIN选单 
因为最后一句是goto main 
我在最开始的时候加了这么一个关键字 
其他4项都一样的~只有other选项不太一样……other还有下一级菜单(其实差不多了啦) 
:other 
cls 
echo submenu2 
echo 1.about 
echo 2.A filelist 
echo 3.startmain 
choice /c:123 Please Select...  
if errorlevel 3 goto main 
if errorlevel 2 goto dir 
if errorlevel 1 goto ver 
和主菜单差不多 
先清屏……之后显示选项……之后选择 
为什么if errorlevel 1 goto ver这句不用 
if errorlevel 1 echo Ver:1.0 author:seadogs呢? 
因为这样就不能返回主菜单了 
要注意的是选择选项的指向要从后往前写……问我为什么?我也问过狼……答案是规定~哈哈 
if errorlevel这个东西……只能跟一句~~所以不能象这么使用 
if errorlevel 1 echo Ver:1.0 author:seadogs 
GOTO MAIN 
还要注意一点就是这写关键字下的一个个小程序要写在需要选择程序的前面……否则的话要用GOTO对他做出指向!否则的话他会把下面的东西全部运行一次……不信你就试试~哈 
可是你会问了~~这样只能做成一个批处理……如何和启动盘联系起来呢? 
其实很简单的了~~你先把这个做出来的批处理改名为Autoexec.bat 
之后做一张启动盘……把这个文件考上去就可以了~不信你自己试试 
当然……还要把你需要用到的软件一起考上去 
是不是很酷呢? 
可是你会发现这个菜单不能象启动多系统时候的选择菜单一样。。。不能进行那种选择之后按回车的操作 
那些启动盘倒底是怎么做的呢? 
他用到了配置文件CONFIG。SYS 
下面我继续针对这个来给大家讲一下 
还是先找个例子吧: 
这是狼在给我讲的时候做了个这么个CONFIG.SYS文件来让我理解CONFIG中各菜单的意义 
疾风之狼: 
不太清楚你要做哪种多级选单,启动时多层选单是由Config.sys来建立的,一个例子  
[menu]  
menuitem=menu1  
menuitem=menu2  
submenu=sub  
[menu1]  
[menu2]  
[sub]  
menuitem=sub-1  
menuitem=sub-2  
[sub-1]  
[sub-2]  
以此方法可以建立更多级的菜单,配合Autoexec.bat中的goto %config%来执行不同的程序。  
 
很简单……大体上就是几个菜单而已 
[Menu]你启动的时候会显示的菜单了…… 
MENUITEM代表一般选项 
还有个SUBMENU,就是带子菜单的选项了! 
这个CONFIG.SYS中的这种菜单形式和上面的GOTO很象 
前面是关键字……后面是指向 
如: 
[menu]  
menuitem=menu1  
menuitem=menu2  
submenu=sub 
这样的话就会显示3个菜单 
menu1 
menu2 
sub 
大家可以现在试试……为什么提示英文错误呢?那是因为你没有做指向呢 
[menu1]  
[menu2]  
[sub]  
这里大家就理解为指向吧 
这个的作用和GOTO里的关键字一样~~让程序能够找到选单所对应的项目 
大家去做这么一个菜单就能很好的理解了……在哪里试呢?去把你C盘的CONFIG.SYS拿来试试咯。。。实在不行就做个98启动盘~之后建这么一个配置文件 
上面的例子在选择优录取 
menu1 
menu2时不会有任何反映 
选择sub的时候选会变成选项 
sub-1  
sub-2  
当然……选择了也没反映~因为我们还没做配置 
菜单到这里我想大家应该理解得差不多了~下面我们看一个叫超酷备份还原启动工具盘的CONFIG.sys文件: 
[MENU] 
MENUITEM=SFDISK,SFDISK 
MENUITEM=CDROM,Start Cdrom 
MENUITEM=GHOST-BAK,BACKUP SYSTEM 
MENUITEM=GHOST-FIX,FIX SYSTEM 
MENUITEM=SYS-C,SYS C: 
MENUITEM=HDFIX,HDFIX 
MENUITEM=README,README 
 
[SFDISK] 
[CDROM] 
device=himem.sys /TESTMEM:OFF 
dos=high,umb 
files=40 
lastdrive=m 
device=oakcdrom.sys /D:MSCD000 
[GHOST-FIX] 
[GHOST-BAK] 
[HDFIX] 
[README] 
看到了吧~其实比我们看的那个还简单呢。。。因为没有子菜单啊~ 
里面的东西看不懂没关系~框架出来了就可以了 
效果是这样的一个选择菜单 
SFDISK,SFDISK 
CDROM,Start Cdrom 
GHOST-BAK,BACKUP SYSTEM 
GHOST-FIX,FIX SYSTEM 
SYS-C,SYS C: 
HDFIX,HDFIX 
README,README 
他几乎没做什么配置……发现了没? 
只有[CDROM]下面有些东西而已 
那他是不是选择了之后没有效果呢?是的! 
注意上面狼还有这么一句: 
以此方法可以建立更多级的菜单,配合Autoexec.bat中的goto %config%来执行不同的程序。 
GOTO大家都知道了~Autoexec.bat也知道了吧~(他在启动的时候运行在CONFIG.SYS之后) 
那我们先放着CD-ROM不管去看看他的Autoexec.bat吧! 
 
超酷备份还原启动工具盘的Autoexec.bat中的内容如下: 
@ECHO OFF 
PROMPT $P$G 
PATH A:\;C:\ 
set temp=c:\ 
set tmp=c:\ 
GOTO %CONFIG% 
:SFDISK 
SFDISK 
GOTO END 
:CDROM 
MSCDEX /D:MSCD000 /K 
SMARTDRV 
GOTO END 
:GHOST-FIX 
GHOST -clone,mode=pload,src=e:\sys\winbak.gho:1,dst=1:1 -SURE 
GOTO END 
:GHOST-BAK 
MD E:\SYS 
GHOST -clone,mode=pdump,src=1:1,dst=e:\sys\winbak.gho -z1 
ATTRIB +r +s +h e:\sys 
GOTO END 
:SYS-C 
SYS C: 
GOTO END 
:HDFIX 
HDFIX 
GOTO END 
:README 
README 
GOTO END 
:END 
大家基本上看的懂吧~~只是有几点不明白而已 
GHOST-FIX和GHOST-BAK里面的参数请参考GHOST参数大全之类的东西~在这里不做重点讲 
set temp=c:\ 
set tmp=c:\ 
作用是把C盘暂时作为临时文件存放的地方 
几乎全都看的懂吧!只差CD-ROM 
还一句就是GOTO %CONFIG%了吧 
GOTO %CONFIG%是什么呢? 
注意上面狼有这么一句: 
以此方法可以建立更多级的菜单,配合Autoexec.bat中的goto %config%来执行不同的程序。 
%config%是个变量!来存放你所选择的菜单(注意!不是显示出来的选项!而是你刚才所指向的那个选项) 
如上面的SYS-C 
CONFIG.sys里有这么2句 
MENUITEM=SYS-C,SYS C: 
[SYS-C] 
MENUITEM=后面跟的就是启动时候显示的选项!而[SYS-C]括号里的SYS-C才是真正“选中”的东西! 
而这个SYS-C也就是你选择后存放在%config%这个变量里的东西! 
大家不需要理解的多么完全……知道这么用就可以了 
总之在Autoexec.bat中的goto %config%是运行选择的项目 
而且Autoexec.bat中GOTO的关键字要对应%config%中的[]里的东西! 
现在光驱的那一部分大家可以不试……其他的大家可以做一做~是不是很酷呢?别忘了把会用到的软件拷到启动盘里哦! 
光驱的那一部分是让光驱可以在DOS下运行 
跟开机加载光驱是一个效果 
[CDROM] 
device=himem.sys /TESTMEM:OFF 
dos=high,umb 
files=40 
lastdrive=m 
device=oakcdrom.sys /D:MSCD000 
 
:CDROM 
MSCDEX /D:MSCD000 /K 
SMARTDRV 
GOTO END 
这里我也理解的不是很透~大家知道怎么用就可以了~ 
:CDROM关键字下的MSCDEX /D:MSCD000 /K里面的/D:MSCD000要和CONFIG.sys中的[CDROM]里的device=oakcdrom.sys /D:MSCD000的/D:MSCD000对应!数值是可以改的!但不能不一样…… 
再就是加载内存管理、DOS加载到高端内存、磁盘高速缓存什么的~大家知道怎么用就可以了 
做完了没?自己去试试~是不是很爽呢? 
DOS中对EXE的调用直接写文件名就可以了~ 
对批处理用CALL 文件名.bat 
对.COM好象也是用CALL…… 
懒的试了……大家自己爽吧! 
前者的优点是灵活性好!看着效果不太好……因为是选择数字或字母来进行选择的 
后者的优点是看着效果比较好看~不过灵活性不好!运行一次之后就要重新启动才能再重新显示选择菜单! 
当然……这些东西现在都有软件可以做~不过自己做出来不是更有DIRER的风范嘛!哈哈~ 
再说一下小技巧!便于你们能把这个批处理做的更好看一些…… 
ECHO. (显示空行) 
@  (不显示本行的内容) 
PROMPT (改变提示符) 
exist用来判断是否存在这个文件(目录)  可配合IF来使用!如一例: 
因为98的注册表主要是user.dat和system.dat,可以如下  
1、复制现有的user.dat和system.dat,也放在windows下,比如名为user.old和system.old  
2、在C:\autoexec.bat中加入如下内容  
@echo off  
c:  
cd \windows  
attrib *.dat -h -s -r  
if exist system.old del system.dat  
if exist user.old del user.dat  
if not exist user.dat copy user.old user.dat  
if not exist system.dat copy system.old system.dat  
attrib system.dat +r +h  
attrib user.dat +r +h  
效果是每次开机还原注册表 
config.sys大家自己看CONFIG全解吧~GOOGLE上有 
引:比如要显示的文件名是bios.txt,以下命令选一个就行  
type bios.txt  
copy bios.txt con  
要修改文本文件的话也有几个办法。  
如果只是要向最后追加东东,比如是Hello world,那么就是  
echo Hello world >> bios.txt  
不要看错了,上面是>>,要是只用一个>的话,你以前的东东会被清掉的,就不是追加了  
除此以外的编辑大概只能用DOS下全屏编辑器比如Edit、PE或是QE之类的了。 
 
RADME文件可以TXT2EXE来做……相关资料在GOOGLE能搜索到~ 
不过好象没有能干下载的~我传上来一个 
还一个问题就是不能显示中文……做中文启动盘是比较麻烦的~我软驱坏了~没有试过…… 
不过和个高手讨论了一下~流程大概是这样的! 
大家知道Pdos95.bat这个文件吗?在98的DOS下加载他就能显示中文了! 
打开批处理大家可以看到所需要的文件! 
pbios 
font16 
hzvio95 
hzkbd 
instdict pinyin 
instdict shanpin 
instdict quwei 
instdict guobiao 
ctrlpan 
98所在盘的WINDOWS\COMMAND差不多全有了!没有的也能搜索到~好象有一个不在…… 
instdict pinyin 
instdict shanpin 
instdict quwei 
instdict guobiao 
是所对应的输入法! 
比如想用拼音的话就把C:Windows\Command\pinyin.tbl拷过去。。。其他的一样~ 
最后要自己再建一个PDOS95的批处理哦!名字当然可以改了……里面的东西除了 
instdict pinyin 
instdict shanpin 
instdict quwei 
instdict guobiao 
其他的不变~这些你拷了什么就写什么 
想显示中文的话就在Autoexec.bat中的第一句加载你的批处理就行了! 
CONFIG里好象是不行了…… 
 
最后讲一下PATH! 
顾名思义PATH就是路径 
DOS分内部命令和外部命令……内部命令在COMMAND。COM中存放~其他的外部命令都在98盘的WINDOWS\COMMAND文件夹里 
可是有时候开机为什么在DOS里输入一个命令他不能运行,而必须要到C盘的WINDOWS\COMMAND里运行呢?因为DOS会先在本文件夹里找你所输入的命令~之后搜索完毕后会搜索PATH中的路径!要是PATH里和本文件夹里都没有的话就会提示找不到! 
看来PATH还蛮有用啊~那么我下面就讲一下怎么使用 
PATH的使用很简单!直接把路径赋给他就OK了!如:PATH C:\ 
中件带一个空格!PATH的赋值一般都在AUTOEXEC.BAT里 
如:PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\PROGRA~1\WIN98RK;%PATH% 
多个路径在中间用分号隔开!%PATH%是什么呢? 
这里的%PATH%同%CONFIG%一样~~都是一个变量而已,里面存放了以前的PATH 
如:PATH D:\;A:\ 
后面又有一句是PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\PROGRA~1\WIN98RK;%PATH% 
那么DOS在本文件夹中找不到的话就会去C:\WINDOWS;C:\WINDOWS\COMMAND;C:\PROGRA~1\WIN98RK;%PATH%中去找!而这时的%PATH%代表D:\;A:\ 
如果在后面加一个PATH E:\的话前面的都会清空!如果不用PATH E:\而用PATH E:\;%PATH%的话就会保存原来的路径! 
在PATH中重复是没关系的……不过重复了没意义~ 
本盘启动只做实验用而已~~不必评价这张盘的好坏~~主要是为了让大家自己能做出自己的超级启动盘! 
就这么多了……哇!好长啊!没想到自己一写写了这么长~受刺激了……大家慢慢看吧 
 
  
 |   
 
 
 
 |