DOS6.0开机多菜单选择

Author: 中国工程物理研究院 魏瑶 Date: 1995-03-17

        多菜单的编制是由系统配置文件CONFIG.SYS和批处理AUTOEXEC.BAT来实现,其基本方法是:
        1.在Config.sys中写入如下语句
        [MENU]
        MENUITEM=A
        MENUITEM=B
        :
        SUBMENU=P
        MENUCOLOR=m,n
        MENUDEFAULT=x,y
        [P]
        MENUITEM=F
        :
        MENUCOLOR=
        [COMMON]
        :
        [A]
        :
        [B]
        :
        [F]
        :
        2.在AUTOEXEC.BAT中写入如下语句
        %CONFIG%
        :A
        :
        GOTO END
        :B
        GOTO END
        :F
        :
        GOTO END
        :END
        3说明
        Config.sys中的A,B,..P..是开机后的菜单选择项,MENUCOLOR是开机后显示屏背景底色和字符颜色选择设置,其颜色代号如下:
        0 Black 黑    8 Gray 灰
        1 Blue 兰     9 Bright blue 亮兰
        2 Green 绿    10 Bright green 亮绿
        3 Cyan 青蓝   11 Bright Cyan 亮青
        4 Red 红      12 Bright red 亮红
        5 Magenta 紫红13 Bright magenta 亮紫
        6 Brown 棕    14 yellow 黄
        7 White 白    15 Bright white 亮白
        MENUDEFAULT=x,y是开机后自定义项,在y秒内如用户不进行选择,系统将自动进入x项,如选择P项,则进入子菜单,在子菜单同样可以定义菜单选择项,背景底色及字符颜色。[COMMON]是各菜单的公用配置,对于笔记本式微机用户,如果要用上POWER管理,可在这里加上
        device=c:\DOS\POWER.EXE
        [A]..[B]..[F]..是各项具体的系统配置
        Autoexec.bat是各选择项各自的执行文件。此外若要逐条执行指令,按“F8”键后再选项即可,若要完全放弃Config.sys配置和批处理文件Autoexec.bat,只需按“F5”就可直接启动机器。
        随本文附上笔者编写的一份多菜单选择程序。笔者使用的微机是AST P4/33,内存8M,DOS6.21。
        @echo off
        PROMPT $p$g
        PATH C:\WINDOWS;C:\usr\fz6\;C:\DOS;C:\DESKSCAN;
        SET TEMP=C:\DOS
        GOTO %CONFIG%
        :WINDOWS
        LH /L:0;1,42400 /S C:\DOS\SMARTDRV
        LH /L:1,35184 C:\WINDOWS\LMOUSE
        WIN
        GOTO END
        :ACAD
        LH /L:0;1,42400 /S C:\DOS\SMARTDRV
        LH /L:1,35184 C:\WINDOWS\LMOUSE
        CD \USR\ACAD
        HDOS
        GOTO END
        :DOS
        LH /L:0;1,42400 /S C:\DOS\SMARTDRV
        LH /L:1,35184 C:\WINDOWS\LMOUSE
        vsafe/1+/2+/3-/4+/5+/6+/7+/8+
        GOTO END
        :WPSNT
        LH C:\USR\FZ6\MOUSE.COM
        LH C:\DOS\SMARTDRV.SYS
        cd\usr\fz6
        spdos
        WBX
        WPS
        GOTO END
        :3DS
        LH /L:0;1,42400 /S C:\DOS\SMARTDRV
        LH /L:1,35184 C:\WINDOWS\LMOUSE
        SET RCPADI=C:\USR\3DS2\DRIVERS\RCPVESA.EXP
        CD \USR\3DS2
        3DS
        :END
        [MENU]
        MenuDefault=dos,10
        MENUITEM=WINDOWS
        MENUITEM=ACAD
        SUBMENU=USR
        MENUITEM=DOS
        MENUCOLOR=15,1
        [USR]
        MENUITEM=WPSNT,SPDOS NT 1.0
        MENUITEM=3DS
        MENUCOLOR=15,3
        [WPSNT]
        Device=C:\DOS\HIMEM.SYS
        dEVICE=C:\DOS\EMM386.EXE RAM X=B000-B7FF FRAME=D000
        DeviceHigh=C:\DOS\SETVER.EXE
        DOS=HIGH,UMB
        Files=25
        Buffers=20
        Stacks=9,256
        Shell=C:\COMMAND.COM C:\ /P /E:512
        [USR]
        MENUITEM=WPSNT
        MENUITEM=3DS
        MENUCOLOR=15,3
        [COMMON]
        [WINDOWS]
        DEVICE=C:\DOS\HIMEM.SYS
        DEVICE=C:\DOS\EMM386.EXE NOEMS HIGHSCAN
        BUFFERS=15,0
        FILES=8
        DOS=UMB
        LASTDRIVE=E
        FCBS=4,0
        DOS=HIGH
        [ACAD]
        DEVICE=C:\DOS\HIMEM.SYS
        DEVICE=C:\DOS\EMM386.EXE NOEMS HIGHSCAN
        BUFFERS=15,0
        FILES=8
        DOS=UMB
        LASTDRIVE=E
        FCBS=4,0
        DOS=HIGH
        [ACAD]
        DEVICE=C:\DOS\HIMEM.SYS
        DEVICE=C:\DOS\EMM386.EXE NOEMS HIGHSCAN
        BUFFERS=15,0
        FILES=8
        DOS=UMB
        LASTDRIVE=E
        FCBS=4,0
        DOS=HIGH
        SWITCHES=/K
        [DOS]
        DEVICE=C:\DOS\HIMEM.SYS
        DEVICE=C:\DOS\EMM386.EXE NOEMS HIGHSCAN
        BUFFERS=15,0
        FILES=8
        DOS=UMB
        LASTDRVIE=E
        FCBS=4,0
        DOS=HIGH
        [3DS]
        DEVICE=C:\DOS\HIMEM.SYS
        BUFFERS=15,0
        FILES=8
        DOS=UMB
        LASTDRIVE=E
        FCBS=4,0
        DOS=HIGH