[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 如何实现限制指定程序/进程的重复运行

本帖最后由 pcl_test 于 2018-3-9 21:02 编辑

@echo off
start  ABC.exe
用批处理 已经运行的可执行文件:ABC.exe.
在 ABC.exe.没有退出的情况下,再次执行此 批处理

@echo off
start  ABC.exe
????
在此语句中加入什么语句,使 ABC.exe 不再启动。。。

就是在执行该命令时,如果 ABC.exe  正在运行 则不再 执行 start  ABC.exe 命令

谢谢!
1

评分人数

论坛标注不可以删除原贴标题,请恢复原贴标题,便于其他用户快速搜索
这么好的论坛你上哪找,运行测试环境为6.1.7601-64
注:请遵守互联网信息安全,勿用于非法用途

TOP

tasklist /nh|findstr /r /i /c:"^ABC.exe">nul||start ABC.exe
0000 发表于 2018-3-8 21:02



    你的代码没有实现 “发现该进程已经存在,那就不要执行”的效果。

谢谢你的回复!!!

TOP

tasklist /nh|findstr /r /i /c:"^ABC.exe">nul||start ABC.exe

TOP

tasklist命令可以查看当前是否已经有 ABC.exe 进程,如果发现该进程已经存在,那就不要执行 start
Batcher 发表于 2018-3-7 21:21



    运行ABC.exe,运行前 查看当前是否已经有 ABC.exe 进程,如果发现该进程已经存在,那就不要执行。没有则执行。

这回意思应该是表达清楚了。

求版主帮助写这段代码。。

万分感谢!!!!!!

TOP

本帖最后由 tzyxljg 于 2018-3-8 19:30 编辑

运行ABC.exe,运行前 查看当前是否已经有 ABC.exe 进程,如果发现该进程已经存在,那就不要执行。没有则执行。

这回好像意思表达清楚了。。

TOP

tasklist命令可以查看当前是否已经有 ABC.exe 进程,如果发现该进程已经存在,那就不要执行 start
Batcher 发表于 2018-3-7 21:21



    大神 给一个完整的语句吧  谢谢

TOP

tasklist命令可以查看当前是否已经有 ABC.exe 进程,如果发现该进程已经存在,那就不要执行 start
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 3# tzyxljg

上例echo start "" abc.exe去掉echo,即可启动abc。

弄错你的要求,可以这样,也许还是理解错你的要求
start "" abc.exe
ping /n 3 127.1>nul
%0

是否冲突,要看程序是否支持单程序多开。有的程序只能同时运行一个实例。
目的,学习批处理

TOP

在abc.exe 已经运行的前提下,再次运行 abc.exe 时不起冲突。

本帖最后由 tzyxljg 于 2018-3-7 21:16 编辑

不是想实现循环,是想实现 先启动 abc.exe ,在abc.exe 已经运行的前提下,再次运行 abc.exe 时不起冲突。

@echo off
start  ABC.exe
用批处理 已经运行的可执行文件:ABC.exe.
在 ABC.exe.没有退出的情况下,再次执行此 批处理

@echo off
start  ABC.exe
????
在此语句中加入什么语句,使 ABC.exe 不再启动。。。

就是在执行该命令时,如果 ABC.exe  正在运行 则不再 执行 start  ABC.exe 命令

谢谢!

TOP

本帖最后由 tzyxljg 于 2018-3-7 08:18 编辑

不是想实现循环,是想实现 先启动 abc.exe ,在abc.exe 已经运行的前提下,再次运行 abc.exe 时不起冲突。

而且这条语句

tasklist|findstr /i "abc.exe"&&ping /n 3 127.1>nul || echo start "" abc.exe
%0

也没有启动 ABC。exe

TOP

  1. @echo off
  2. tasklist|findstr /i "abc.exe"&&ping /n 3 127.1>nul || echo start "" abc.exe
  3. %0
复制代码
循环延时可以自己调整
目的,学习批处理

TOP

返回列表