![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-07 21:37 |
共 48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,252 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]请问如何用批处理检查一个程序是否已运行 |
| 可打印版本 739 / 6 |
| 第1楼 i3i4i5 | 发表于 2008-03-24 11:23 |
| 新手上路 发帖 7 积分 16 | |
|
[求助]请问如何用批处理检查一个程序是否已运行 如题
最近将输入法加入系统托盘.程序internat要通过开始菜单的启动项启动.但是安全设置不允许在启动项加入快捷方式.只好用批处理. 我是在网吧环境,所以不能一台一台的添加,只好在服务器上统一添加开机运行命令.但有的机子能启动输入法,再用开机命令加一次的话会弹出对话框,说程序已运行. 虽说不是大问题,但很影响客户上网情绪.小弟解决不了,所以来求助. 另外输入法切换也出现问题.就是按常规的Ctrl+Shift切换输入法不管用,设置成Alt+Shift倒是管用,但有客户并不知道Alt+Shift还能切换输入法.唉.这不是批处理的范围,但如果那位兄台知道,也顺便指教一下 |
|
| 第2楼 Climbing | 发表于 2008-03-24 12:19 |
| 铂金会员 发帖 2,753 积分 6,962 来自 河北保定 | |
|
用tasklist配合find可以检查对应程序是否已经运行。
Ctrl+Shift切换不了输入法,这似乎只能说是系统有问题了。 |
|
| 第3楼 i3i4i5 | 发表于 2008-03-25 17:04 |
| 新手上路 发帖 7 积分 16 | |
|
谢谢指教.
|
|
| 第4楼 chishingchan | 发表于 2008-03-26 12:00 |
| 银牌会员 发帖 538 积分 1,284 | |
|
例如是AVP.EXE进程 可否帮忙列出代码?
|
|
| 第5楼 jiulong | 发表于 2008-03-26 16:56 |
| 中级用户 发帖 183 积分 396 | |
|
for /f "tokens=1" %%i in ('tasklist^|find "avp.exe"') do (
if avp.exe EQU %%i ( echo %%i进程存在&pause>nul&exit )else( echo %%i进程不存在&pause>nul&exit ) |
|
| 第6楼 Climbing | 发表于 2008-03-26 17:14 |
| 铂金会员 发帖 2,753 积分 6,962 来自 河北保定 | |
|
没有必要用for。
tasklist | find /i "avp.exe" >nul if %errorlevel%==0 echo find avp.exe |
|
| 第7楼 m84464772 | 发表于 2008-03-27 20:06 |
| 初级用户 发帖 12 积分 31 | |
|
这样写简单一点.
tasklist | find /i "internat.exe" || echo 没有找到进程.. |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |