中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-14 01:15
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS学习入门 & 精彩文章 (教学室) » 大家新年好!请教一个.bat的小问题!
可打印版本  1,183 / 5
第1楼 sjmm 发表于 2006-02-01 12:08
初级用户 发帖 7 积分 26
大家新年好!请教一个.bat的小问题!
首先祝中国DOS联盟论坛的所有工作人员及用户新年快乐,身体健康,狗年旺旺!
我是一个DOS初学者,使用DOS7.1+WINXP,请教:
为方便管理,我所有的DOS软件和游戏存放放E:\下,但有些游戏不止一个文件,我存放在E:\GAME\GAME1\*.*,为使用方便,我做了一个C:\DOS71\GAME1.BAT,如下:
@ echo off
e:
cd dos\game
game1
cd\
c:
见笑了,使用中发现当E:\中当前目录不是E:\时(比如:E:\DOS\TOOLS),发现.BAT就不能用了!不过后来在\DOS71中发现了一个DOSSHELL.BAT.它无论在任何目录中都可启动,我可否把我的GAME1.BAT仿效它呢?

写成: @e:\dos\game\game1.exe %1 %2 %3 %4 %5 %6 %7 %8 %9
如果可以,那又是为什么呢?
我知道%是代表变量的符号,这样的用法是什么意思?又有什么用处?
请指教!先谢过各位了!
第2楼 Michael 发表于 2006-02-04 18:14
钻石会员 发帖 3,041 积分 10,056
第二行的"cd dos\game"改为"cd \dos\game".
第3楼 sjmm 发表于 2006-02-11 12:25
初级用户 发帖 7 积分 26
非常感谢!那@C:\DOS71\DOSSHELL\DOSSHELL.COM %1 %2 %3 %4 %5 %6 %7 %8 %9后的@ %1 %2 %3 %4 %5 %6 %7 %8 %9是什么意思?为什么我仿效它做的批处理没用呢?谢谢指教!
第4楼 chenall 发表于 2006-02-12 09:29
银牌会员 发帖 469 积分 1,276 来自 福建泉州
1.后面的%1 %2 ... %9是参数.
有此命令是不需要加参数的.
像你的游戏,一般是不需要的.
使用 e:\dos\game\game1.exe
即可.

2.它无论在任何目录中都可启动,我可否把我的GAME1.BAT仿效它呢?
使用path.
path %path%;e:\dos\game\
game1.exe
第5楼 willsort 发表于 2006-02-12 10:15
元老会员 发帖 1,512 积分 4,432
Re sjmm:

如果你的 GAME1.bat 与 DOSSHELL.BAT 同处与 C:\DOS71 ,那么必然会具有同样的查找并启动的特性。如果 DOSSHELL 可在任何目录下执行, GAME1.BAT 则当然也可以。

当然,GAME1.Bat 在任何目录下都可执行,并不代表 GAME1.EXE 在任何目录下都可执行,这取决于游戏程序本身是否需要外部文件的支持,根据你在主楼提到的情况,则基本上认定 GAME1.EXE 只能在游戏目录下执行,所以,才需要在GAME1.BAT 中切换目录。你的程序无法在所有路径下都正常执行,正缘于 Michael 兄指出的原因,用切换路径时未从根目录上指定路径。

[ Last edited by willsort on 2006-2-12 at 10:16 ]
第6楼 sjmm 发表于 2006-02-12 14:57
初级用户 发帖 7 积分 26
非常感谢!!!
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023