中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 17:02
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]网吧实战卡丁车与文化软件冲突
可打印版本  951 / 4
第1楼 hemlinte 发表于 2007-08-31 14:53
新手上路 发帖 5 积分 16
[求助]网吧实战卡丁车与文化软件冲突

课题如下: 网吧文化监控软件与卡丁车程序冲突 文化监控软会每3分钟自动检测一次 如果没有被运行或断开 则自动运行 其在任务管理器中的两个核心运行程序为clientofwatcher.exe和watche~1.exe 现在只需要在卡丁车启动的时候从进程中强制结束掉以上两程序 以保证顺利运行卡丁车 批处理命令如下:
rem://因为我是XP2的系统 用taskkill命令不能完全强制结束上面两程序 故选择用ntsd命令来解决
@SETLOCAL
echo //.解决跑跑卡丁车不能正常玩的批处理.//
ntsd -c q -pn watche~1.exe
ntsd -c q -pn clientofwatcher.exe
start D:\M01\KartRider.exe
@endlocal

为了方便起见 我把卡丁车的执行程序做了上面的批处理 每次运行都会先运行它
这个是最简单的批命令 但是现在问题来了 如果运行一次的话 可以自动运行卡丁车程序KartRider.exe 由于卡丁车经常更新 更新好后再次运行该命令的时候就会提示:
Unable to finde process 'watche~1.exe', HRESULT 0*80004002
ntsd:exiting - press enter ---

这个是因为已经强制结束掉了文化的两个程序 进程里没有了 要在3分钟后才会自动运行 虽然按两次回车键就可以解决问题 但是对于大多数网民来讲 他们不知道应该如何操作 所以我想再把那个批处理完美一下 利用条件语句判断执行

首先检测进程中是否存在文化的两个程序 并赋值变量 如果有则运行ntsd命令强制结束再运行卡丁车程序 如果没有表示已经被结束了 直接运行卡丁车程序做成自动化的批处理

我对dos命令不是很懂 请高手帮忙指点下 大家一起现身说法吧 谢谢了



[ Last edited by hemlinte on 2010-10-16 at 06:52 ]
第2楼 wudixin96 发表于 2007-08-31 14:57
银牌会员 发帖 931 积分 1,928
就先tasklist一次,检测watche~1.exe、 clientofwatcher.exe是否存在。再决定是否ntsd就行了
第3楼 hemlinte 发表于 2007-08-31 15:55
新手上路 发帖 5 积分 16
不会写条件命令啊 帮忙啊
第4楼 slore 发表于 2007-08-31 16:23
铂金会员 发帖 2,478 积分 5,212
tasklist+findstr
第5楼 HAT 发表于 2007-08-31 18:15
版主 发帖 5,017 积分 9,023
//不会写条件命令啊 帮忙啊
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023