标题: 做了个批处理启动界面,请问:如何实现各选择的执行?? 
[打印本页]
作者: winlogo     
时间: 2006-6-16 10:28    
标题: 做了个批处理启动界面,请问:如何实现各选择的执行??
我做了个启动软盘菜单界面, 菜单内容如下:
  
            启动菜单
      1. 从硬盘启动系统
      2. 执行批处理A.BAT
      3. 执行批处理B.BAT
      4. 打开read.txt文件
请问:如何实现,当通过键盘选择1、2、3、4时,分别执行相应的操作???
(注:A.BAT,B.BAT批处理文件我也以经搞定了。)
谢谢帮助!!!
——————————————————————————————————————
附:
config.sys文件内容如下:
DEVICE=HIMEM.SYS
DEVICE=VIDE-CDD.SYS /D:MSCD000 
Lastdrive=Z
autoexec.bat文件内容如下:
MSCDEX /D:MSCD000 /L:Z
pbios
font16
hzvio95
hzkbd
ctrlpan
CLS
ECHO OFF
ECHO
ECHO 
ECHO             启动菜单
ECHO 
ECHO      1. 从硬盘启动系统
ECHO      2. 执行批处理A.BAT
ECHO      3. 执行批处理B.BAT
ECHO      4. 打开read.txt文件
ECHO 
PAUSE
作者: bagpipe     
时间: 2006-6-16 11:24
先说明一下,我觉得要按照正常来说,楼主的这个批处理是错误的,因为你不是运行在命令提示符CMD下,所以你要修改CONFIG.SYS文件,然后在调用AUTOEXEC.BAT中的语句来实现各个菜单的作用,请看下面:
[Menu] 
menuitem=从硬盘启动系统
menuitem=执行批处理A.BAT
menuitem=执行批处理B.BAT
menuitem=打开read.txt文件
[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] 
在AUTOEXEC.BAT中是这样对应的
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% 
:从硬盘启动系统
path=c:\dos;c:\deskpub;c:\typeset 
c:\mouse\mouse.com 
deskpub 
; now skip Lisa's section & go to end 
goto end 
:执行批处理A.BAT
path=c:\dos;c:\network;c:\utility 
doskey 
net logon lisa 
goto end 
:end 
别的我不多说了,以此类推,还有,好像对支持中文的菜单的问题,这个我也没有实验过,建议用英文菜单,主要是判断%config%这个特殊环境变量所对应的语句段从而实现各个菜单的功能,自己体会吧............
作者: brglng     
时间: 2006-6-16 15:58
按照楼主这样在autoexec.bat中制作一个模拟的启动菜单是完全可以的,因为楼主并没有提到需要在autoexec.bat里加载设备驱动程序。如果需要在autoexec.bat里加载设备驱动也是可以的,需要用ctload、device、devload等程序,但是不建议这样做。
要实现楼主的功能可以在autoexec.bat最后加这样一段:
choice /c:1234 /n /t:1,30 请选择:
if errorlevel 4 goto d
if errorlevel 3 goto c
if errorlevel 2 goto b
if errorlevel 1 goto a
:a
rem 加入你要执行的内容
:b
rem 加入你要执行的内容
:c
rem 加入你要执行的内容
:d
rem 加入你要执行的内容
另外config.sys的启动菜单是没法用中文的,而且也没有办法在菜单之前加载中文系统。另外建议中文系统不要用pdos,它的通用性和兼容性比较差,还有mscdex可以换成体积和占内存更小的shsucdx等。
 Last edited by brglng on 2006-6-16 at 16:04 ]