![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 04:57 |
共 48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 问题请教:一个DOS窗口怎样知道另一个DOS窗口已关闭 |
| 可打印版本 841 / 8 |
| 第1楼 rgbsky | 发表于 2008-04-05 16:36 |
| 新手上路 发帖 1 积分 4 | |
|
问题请教:一个DOS窗口怎样知道另一个DOS窗口已关闭 我有一个程序要运行2个dos窗口(称为A和B),其中A要等B执行完才继续执行。但B是要用"CTRL+C"来关闭的,请问这时有什么办法来让A知道B已经关闭?
----- 如果B是正常退出,我会想到B中用一个临时作标志,A中判断该文件就可以了。但B要用CTRL+C来关闭,请高手支招。。。。 第一次上DOS联盟,慕名而来。。。希望不会让我失望。。。谢谢大家!!! |
|
| 第2楼 fastslz | 发表于 2008-04-05 16:50 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
|
运行环境?
DOS窗口?CMD窗口?win2000?winxp? |
|
| 第3楼 DOS95 | 发表于 2008-04-07 05:12 |
| 初级用户 发帖 49 积分 112 | |
|
我想可以在 A 中用 tasklist 列进程,用 find 看有几个 cmd 在运行,循环检测,当只有一个 cmd 就可以认为 B 被关闭了,然后该做什么就可以做了
|
|
| 第4楼 yyqheaven | 发表于 2008-04-07 14:51 |
| 新手上路 发帖 6 积分 14 | |
|
我也不清楚,顶一下
|
|
| 第5楼 jiulong | 发表于 2008-04-09 03:04 |
| 中级用户 发帖 183 积分 396 | |
|
如果根据进程的话是做不到的,两个进程都是cmd.exe
不知道如何判断,等待高手答复吧 |
|
| 第6楼 fastslz | 发表于 2008-04-09 13:36 |
| 铂金会员 发帖 2,315 积分 5,493 来自 上海 | |
|
下面代码适合XP
|
|
| 第7楼 chishingchan | 发表于 2008-04-17 08:23 |
| 银牌会员 发帖 538 积分 1,284 | |
|
六楼的代码不断循环显示没关闭,关闭后循环显示关闭,按右上角的红X,机器蓝屏!
|
|
| 第8楼 cusa | 发表于 2008-04-18 11:24 |
| 新手上路 发帖 1 积分 2 | |
|
我的倒不兰屏。。不过也是不行
|
|
| 第9楼 DOS95 | 发表于 2008-04-20 08:59 |
| 初级用户 发帖 49 积分 112 | |
|
这是我的示范代码,LZ可以参考一下:
tasklist|find/c "cmd.exe"|find "2" ;;判断是不是有2个CMD窗口 if errorlevel==1 goto 1cmdwindow ;;返回0时是2个CMD,1时不是 echo B.bat working... goto batend :1cmdwindow echo B.bat close :batend |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |