找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 46894|回复: 6

[其他] BAT批处理怎样自动重启崩溃的程序?

[复制链接]
发表于 2014-5-15 03:33:26 | 显示全部楼层 |阅读模式
我目前的情况如下:

我手上有一个程序,经常崩溃,不定时不定点,由于程序本身是没有问题的,所以在程序本身下手不实际,这个问题是因为某些连接进入程序的人操作不当造成。

但是崩溃无所谓,只需要它会在自己崩溃的时候自动重启即可,我希望用批处理可以达到这样一个效果。

另外一个就是我希望可以设定一个时间,让这个程序自动关闭,然后再开启,也就是说一个定时重启指定程序。

我希望上面两个功能都可以结合到一个BAT进行,不知道大神们有没有想法,求大神给代码。

程序名称:ABC.EXE

程序路径:D:\ABC SERVER\ABC.EXE

操作系统:Windows 7 64 BIT 旗舰版
发表于 2014-5-15 08:28:49 | 显示全部楼层
我希望可以设定一个时间,让这个程序自动关闭,然后再开启,也就是说一个定时重启指定程序。

对于这个功能,把 test.bat  放到任务计划里面定时执行就行了。
  1. @echo off
  2. taskkill /f /im ABC.EXE
  3. start "" "D:\ABC SERVER\ABC.EXE"
复制代码
发表于 2014-5-15 08:29:32 | 显示全部楼层
只需要它会在自己崩溃的时候自动重启即可,我希望用批处理可以达到这样一个效果。

你需要描述清楚希望BAT根据什么条件来判断程序崩溃
 楼主| 发表于 2014-5-20 17:06:48 | 显示全部楼层
对于这个功能,把 test.bat  放到任务计划里面定时执行就行了。
Batcher 发表于 2014-5-15 08:28



    非常感谢您的关注和回复,很抱歉我上网时间并不多。

我大致了解了一下,您的回复,我的情况是这个程序需要定时重启来进行一个清理的动作。(约4-6小时左右重启一次。)

而程序崩溃的话,我观察下,在某些特定的情况,程序的进程依然存在,但是程序实际上已经崩溃。(概率大概是15%的样子。)

而一般而言,程序在正常情况下崩溃之后会自动结束掉进程。

所以程序崩溃的话,进程也会不见,再检查进程没有这样的程序之后,BAT自动开启程序运行。
 楼主| 发表于 2014-5-20 17:23:33 | 显示全部楼层
你需要描述清楚希望BAT根据什么条件来判断程序崩溃
Batcher 发表于 2014-5-15 08:29



    你好,我使用这样一段代码成功让程序如果崩溃,会自动再运行,但是我想再插入一段代码,可以让程序在指定时间内进行一次重启,而切代码不会跟我这里的代码有冲突。
  1. @echo off
  2. tasklist|findstr /i "ABC"
  3. if errorlevel 1 goto start
  4. ping -n 15 127.1>nul
  5. %0

  6. :start
  7. start ABC
  8. %0
复制代码
我这里是15秒检测一次程序是否在进程,如果不在,即重新启动程序。
发表于 2014-5-20 18:52:40 | 显示全部楼层
可以让程序在指定时间内进行一次重启,而切代码不会跟我这里的代码有冲突。

把你的.bat放到任务计划里面执行
发表于 2015-10-29 18:06:54 | 显示全部楼层
其实我也正在寻找这个方法呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 12:13 , Processed in 0.019070 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表