楼 主
[求助]网吧实战卡丁车与文化软件冲突
发表于 2007-08-31 14:53 · 中国 上海 杨浦区 电信
新手上路
★
积分 16 发帖 5 注册 2007-08-31 06:26 18年会员 UID 96236 性别 男
状态 离线
课题如下: 网吧文化监控软件与卡丁车程序冲突 文化监控软会每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 楼
发表于 2007-08-31 14:57 · 中国 香港 腾讯云
银牌会员
★★★
积分 1,928 发帖 931 注册 2007-01-06 11:46 19年会员 UID 75624 性别 男
状态 离线
就先tasklist一次,检测watche~1.exe、 clientofwatcher.exe是否存在。再决定是否ntsd就行了
第 3 楼
发表于 2007-08-31 15:55 · 中国 上海 杨浦区 电信
新手上路
★
积分 16 发帖 5 注册 2007-08-31 06:26 18年会员 UID 96236 性别 男
状态 离线
第 4 楼
发表于 2007-08-31 16:23 · 中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212 发帖 2,478 注册 2007-02-08 23:39 19年会员 UID 79003 性别 男
状态 离线
第 5 楼
发表于 2007-08-31 18:15 · 中国 上海 联通
版主
★★★★★
积分 9,023 发帖 5,017 注册 2007-05-31 19:39 19年会员 UID 89899 性别 男
状态 离线
//不会写条件命令啊 帮忙啊
@echo off
for /f "tokens=1 delims= " %%a in ('tasklist ^| findstr "clientofwatcher.exe"') do @set flag=%%a
if defined flag (
echo yes
) else (
echo no
)
pause
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正