当有意从服务(services.msc)停止Windows服务时,是否有办法调用批处理或Powershell脚本,我的应用程序服务停止时需要执行几项任务。我有一个脚本,它检查服务的状态,如果Windows服务没有运行,可以调用另一个脚本,但是它与时间表一起工作,所以如果停止并立即启动服务,脚本将不会执行,因为服务将在到那时运行状态。
答案 0 :(得分:0)
您可以执行轮询服务的无限循环。
While ($True)
{
If (-not (Get-Service -Name 'myproc')) { <# do a thing #> }
}
答案 1 :(得分:-1)
(我没有足够的代表作为评论这样做,所以我要留下&#34;答案&#34; - 抱歉提前!)
我不知道在停止服务等事件上启动脚本。您可以使用&#34;停止服务&#34;将Powershell与当前服务监视脚本结合使用的cmdlet,以便在您运行脚本时不再重新启动服务,然后启动&#34; Start-Service&#34;最后让它回来。