从Windows服务启动时,批处理文件不会启动程序

时间:2015-04-24 11:27:03

标签: windows batch-file

我创建了一个批处理文件,以便在特定服务停止时运行。 批处理文件应该停止相关软件运行,重新启动某些服务(停止/启动)并再次启动软件。

这是一个简单的代码:

@echo off
Taskkill /F /IM program1.exe
Taskkill /F /IM program2.exe
timeout /t 5
net stop service1
net stop service2 && net start service2
net start service3
timeout /t 2
start C:/path/program1.exe
start C:/path/program2.exe

设置服务以将批处理文件作为首次失败时的恢复运行。 批处理文件通过快捷方式链接,以便能够以管理员身份运行。

这在直接运行批处理文件时非常有效,但是当它由服务恢复执行时,软件的启动就会失败。 有谁知道可能出现什么问题?

1 个答案:

答案 0 :(得分:0)

在某些情况下timeout /t 5可能会造成麻烦。尝试将其替换为PING -n 6 127.0.0.1 > NUL