用Turbo Pascal实现批文件菜单驱动程序

Author: 王华 Date: 1992-06-05

        (1)语句8读入选择;
        (2)语句9判断选择是否在命令行参数[Paramstr(1)]给出的选择字符或回车键中;
        (3)如果超出范围,则通过语句10鸣铃示警;
        (4)语句12将选择在命令行参数中出现的位置号加上49后返回DOS;
        (5)回车键默认为50。
        此程序编译成menu.exe带上选择范围参数加在批文件中。见批文件AUTOEXEC.BAT。前几句显示选择提示,语句9 MENU 123表示它的合法选择范围是回车键和‘1'、‘2'、‘3',分别对应的返回代码是50、51、52、53,后面通过ErrorLevel测试而执行相应的批命令。改变批文件的提示和MENU后给的参数,可形成新的菜单功能,不必修改菜单驱动程序,从而达到了通用的目的。
        MENU.PAS
        1:PROGRAM MENU;
        2: USES CRT;
        3:VAR
        4:      K:CHAR;
        5:CHICE:BYTE;
        6:BEGIN
        7:REPEAT
        8:K:=ReadKey;
        9:CHICE:=POS(K,CHR(13)+PARAMSTR(1));
        10:IF CHICE=0 THEN WRITE(CHR(7));
        11:UNTIL CHICE<>0;
        12:Halt(CHICE+49);
        13:END.
        AUTOEXEC.BAT
        1:ECHO OFF
        2:CLS
        3:ECHO [1]__AutoCAD__
        4:ECHO [2]__CCDOS2.13__
        5:ECHO [3]__WINDOWS__
        6:ECHO [4]__DOS x.xx__
        7:ECHO PLEASE CHICES
        8:
        9:MENU 123
        10:
        11:IF ERRORLEVEL 53 GOTO WINDOWS
        12:IF ERRORLEVEL 52 GOTO CCDOS
        13:IF ERRORLEVEL 51 GOTO AUTOCAD
        14:IF ERRORLEVEL 50 GOTO DOSX
        15::AUTOCAD
        16:ECHO AUTOCAD Start……
        17:CD\ACAD
        18:HCAD
        19:GOTO DOSX
        20::CCDOS
        21:ECHO CCDOS2.13 Start……
        22:CD\213
        23:COMMAND C213
        24:GOTO DOSX
        25::WINDOWS
        26:ECHO WINDOWS Start……
        27:WIN
        28:ECHO END OF WINDOWS start……
        29::DOSX
        30:PATH \;\PCTOOLS