返回主页

 

定义多配置的命令Multi-config


一个CONFIG.SYS文件可以定义几种不同的系统配置。 在定义多种配置时,可使用下列特殊的CONFIG.SYS命令:

Include
Menucolor
Menudefault
Menuitem
Submenu


定义多种配置的一般步骤如下:

1 在CONFIG.SYS文件中,以[menu]开头,后跟一个或多个<MENUITEM>命令来定义启动菜单。<MENUDEFAULT><MENUCOLOR><SUBMENU>命令可用来定义启动菜单的特殊属性。

2 在CONFIG.SYS文件中,为每个配置创建配置块。 每个配置块用一个块头 ─ 由方括号括起来的名字开始。 每个块中加入所需执行的<CONFIG.SYS命令>,系统根据菜单选择执行不同的配置。

3 (可选)在AUTOEXEC.BAT文件中,使用<批处理命令>,如 <GOTO><IF>,以便MS-DOS根据启动配置,来执行不同的AUTOEXEC.BAT命令。

当从启动菜单中选定某个配置时,MS-DOS将定义环境变量CONFIG,并设置其值为选定的配置块名。 为让MS-DOS根据不同的CONFIG值,执行不同的命令集,可在文件AUTOEXEC.BAT中加入一条GOTO %CONFIG%命令。

有关定义多配置的详细信息,参见《MS-DOS 6.22用户手册》中“系统配置”一章。


多配置─例子



在CONFIG.SYS文件中定义多种配置

下面的CONFIG.SYS文件中定义了两个配置:

[Menu]
menuitem=Steve
menuitem=Lisa

[Common]
dos=high
buffers=15
device=c:\dos\himem.sys

[Steve]
files=20
device=c:dos\emm386 2048

[Lisa]
files=40
device=c:\net\network.sys

[Common]



此CONFIG.SYS为Steve和Lisa定义了不同的配置。 对于这两个配置,MS-DOS均执行了[comon]段中的三个命令: DOS=HIGH,BUFFERS=15和DEVICE=C:\DOS\HIMEM.SYS。Steve使用桌面排版系统,需要扩充内存,因此该配置包含一条EMM386命令,而它并不使用网络。 Lisa使用网络,但并不使用桌面排版系统,因此它启动了网络驱动程序。



在AUTOEXEC.BAT文件中定义多配置

当从启动菜单中选定了一种配置后,MS-DOS定义了一个名为CONFIG的环境变量,并将其值设置为选定配置块的名称。 在AUTOEXEC.BAT文件,可用<GOTO>命令针对不同的CONFIG变量执行不同的命令集。

下面的AUTOEXEC.BAT文件针对CONFIG变量使用GOTO命令执行不同的命令集。 这个AUTOEXEC.BAT文件应配合前面的CONFIG.SYS文件。

c:\dos\smartdrv.exe
set temp=c:\temp
c:\dos\msav
; Go to the section that matches the current
; value of the CONFIG variable
goto %config%

:Steve
path=c:\dos;c:\deskpub;c:\typeset
c:\mouse\mouse.com
deskpub
; now skip Lisa's section & go to end
goto end

:Lisa
path=c:\dos;c:\network;c:\utility
doskey
net logon lisa
goto end

:end



当MS-DOS运行该AUTOEXEC.BAT文件时,它将启动SMARTDrive,设置TEMP环境变量,并启动MS-DOS防病毒程序。 MS-DOS然后转向与环境变量CONFIG相匹配的段。

如果选定的配置名为Steve,MS-DOS转向Steve段。它将为Steve设置搜索路径,装入C:\MOUSE目录的MOUSE.COM程序,然后运行桌面排版系统。 GOTO END指示MS-DOS跳转到END段,从而保证了Lisa段中的命令不被执行。

如果当前配置为Lisa,则将设置不同的搜索路径,MS-DOS运行Doskey程序,执行Logon命令指示网络驱动程序(已由CONFIG.SYS文件装入),将计算机连接到网络。


返回主页