中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » 有谁可以帮我解释一下这个DOS编程的具体命令作用啊?
作者:
标题: 有谁可以帮我解释一下这个DOS编程的具体命令作用啊? 上一主题 | 下一主题
copy114
初级用户




积分 229
发帖 37
注册 2002-11-9
状态 离线
『楼 主』:  有谁可以帮我解释一下这个DOS编程的具体命令作用啊?

以下是一个选择加载哪一种驱动程序的方式,请高手们帮我注释一下它们每条命令的作用可以吗?因为我只是一只菜鸟来的。。。

@ECHO OFF
goto start
:w_menu

UltraBoot Disk Startup Menu
屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯

  [1. CDROM Driver Only    ]
  [2. CDROM and SCSI Device]
  [3. Compact Mode         ]
哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪
  [4. Quit to DOS (ESC)    ]














::

:t_menu

UltraBoot Disk Startup Menu
屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯

   1. CDROM Driver Only
   2. CDROM and SCSI Device
   3. Compact Mode
哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪
   4. Quit to DOS (ESC)
::

:start
set path=%ramdrv%\bin
set path=%path%;%ramdrv%\doscmd
mouse /u
cls

wbat text 2,2 @startup.bat:t_menu

wbat text 6,4 (+white on +blue) " 1. CDROM Driver Only     "

wbat text 7,5 (+red on black) "2"
wbat text 8,5 (+red on black) "3"
wbat text 10,5 (+red on black) "4"

wbat cursor 12
func ? Time remaining:
func -w10>%temp%\tmp.bat
call %temp%\tmp.bat
del %temp%\tmp.bat

wbat text 12,1 "                    "

if "%?%"=="27" goto domenu4
if "%?%"=="13" goto domenu1

if "%?%"=="208" goto menu2
if "%?%"=="200" goto menu4

if "%?%"=="49" goto domenu1
if "%?%"=="50" goto domenu2
if "%?%"=="51" goto domenu3
if "%?%"=="52" goto domenu4

goto domenu1

:menu1
set ?=
call w.bat fix menu 1,1 (white on black) @startup.bat:w_menu #1
goto doit

:menu2
set ?=
call w.bat fix menu 1,1 (white on black) @startup.bat:w_menu #2
goto doit

:menu3
set ?=
call w.bat fix menu 1,1 (white on black) @startup.bat:w_menu #3
goto doit

:menu4
set ?=
call w.bat fix menu 1,1 (white on black) @startup.bat:w_menu #4
goto doit

:doit
cls
if "%?%"=="1" goto domenu1
if "%?%"=="2" goto domenu2
if "%?%"=="3" goto domenu3
if "%?%"=="4" goto domenu4
goto domenu4

:domenu1
cls
echo Extracting device driver(s)...
mkdir %ramdrv%\device
extract /y /l %ramdrv%\device /e a:\cdrom.cab >nul
device %ramdrv%\device\vide-cdd.sys /D:MSCD001

goto common

:domenu2

echo Extracting device driver(s)...
mkdir %ramdrv%\device
extract /y /l %ramdrv%\device /e a:\cdrom.cab >nul
extract /y /l %ramdrv%\device /e a:\scsi.cab >nul
device %ramdrv%\device\vide-cdd.sys /D:MSCD001
device %ramdrv%\device\btdosm.sys
device %ramdrv%\device\flashpt.sys
device %ramdrv%\device\btcdrom.sys /D:MSCD001
device %ramdrv%\device\aspi2dos.sys
device %ramdrv%\device\aspi8dos.sys
device %ramdrv%\device\aspi4dos.sys
device %ramdrv%\device\aspi8u2.sys
device %ramdrv%\device\aspicd.sys /D:MSCD001

goto common

:domenu3

echo Extracting device driver(s)...
mkdir %ramdrv%\device
extract /y /l %ramdrv%\device /e a:\cdrom.cab >nul
device %ramdrv%\device\vide-cdd.sys /D:MSCD001

cls
echo.
echo Preparing to start your computer.
echo This may take a few minutes. Please wait...
echo.

mkdir %ramdrv%\pdos
extract /y /l %ramdrv%\pdos /e a:\pdos.cab >nul
set path=%path%;%ramdrv%\pdos
copy %ramdrv%\pdos\pdos.def %ramdrv%\ >nul

mkdir %ramdrv%\vc
extract /y /l %ramdrv%\vc /e a:\vc.cab >nul
set path=%path%;%ramdrv%\vc

lh mscdex /D:MSCD001
lh smartdrv

goto end

:domenu4
cls
echo.
echo To see the menu again, type STARTUP and press ENTER.
echo.
set startup=4
goto end

:common
cls
echo.
echo Preparing to start your computer.
echo This may take a few minutes. Please wait...
echo.

mkdir %ramdrv%\pdos
extract /y /l %ramdrv%\pdos /e a:\pdos.cab >nul
set path=%path%;%ramdrv%\pdos
copy %ramdrv%\pdos\pdos.def %ramdrv%\ >nul

mkdir %ramdrv%\vc
extract /y /l %ramdrv%\vc /e a:\vc.cab >nul
set path=%path%;%ramdrv%\vc

mkdir %ramdrv%\tools
if exist a:\ghost.cab extract /y /l %ramdrv%\tools /e a:\ghost.cab >nul
if exist a:\pqmagic.cab extract /y /l %ramdrv%\tools /e a:\pqmagic.cab >nul
set path=%path%;%ramdrv%\tools

lh mscdex /D:MSCD001
lh smartdrv

echo.
echo The diagnostic tools were successfully loaded to drive Z:.
echo.

:end
echo To view Help, type HELP and then press ENTER.
echo.
%ramdrv%
lh mouse >nul
lh doskey >nul
set ?=
set wbat=

if "%startup%"=="4" goto eof
menu
:eof
set startup=


2002-11-11 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ko20010214
版主




积分 7294
发帖 1628
注册 2002-10-16
状态 离线
『第 2 楼』:  

你可以告诉我哪一条你不懂。我再解释。要不然,工作量太大,而且没有很大意思。另外,你对照那个autoexec.bat的详细解释慢慢看一下,理解一下好吗?我希望您能“学”到东西,而不是由我灌给你。



ko20010214
=================================
大功告成,打个Kiss!
ko20010214@MSN.com
神州优雅Q300C
Intel CeleronM 370处理器 | 256MbDDR内存
40G硬盘 | USB2.0 | IEEE 1394
13.3 ' WXGA 宽屏(16:10) | COMBO光驱
10/100M网卡 | 四合一读卡器
2002-11-11 00:00
查看资料  发送邮件  发短消息 网志  OICQ (16959102)  编辑帖子  回复  引用回复
Michael
钻石会员





积分 10046
发帖 3039
注册 2002-11-11
状态 离线
『第 3 楼』:  

这不是编程,是批处理文件.俺也不大懂



简单就是美
2002-11-11 00:00
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: