我工作场所的 PC 安装了 Chrome 远程桌面,让我可以在家远程工作。有时程序会失败,需要我手动重启服务才能使其再次运行(任务管理器 -> 服务 -> 右键单击服务 -> 重启)。
显然,互联网上很多 Autohotkey 指南都是关于重新启动 exe 程序而不是服务。我想知道是否有办法将其制作成脚本并允许 Autohotkey 自动终止服务并在每天早上 8 点重新启动它?
答案1
您是否尝试过设置服务的恢复设置,以便在发生故障时重新启动服务?我可以想象这样一种情况,即它可能无法正常工作,但如果 Windows 检测到服务已发生故障,它可以自动重新启动它,而无需单独的看门狗。
在 Windows 7 中,您可以按如下方式打开服务列表:
- 控制面板 > 管理工具 > 服务
- 或者直接在运行对话框中运行“services.msc”
一旦服务列表处于活动状态,找到感兴趣的项目并打开该服务的属性。
在顶部的选项卡上,选择恢复。
对于恢复选项,您可以将第一次、第二次和后续故障的所有 3 个下拉菜单设置为“重新启动服务”
答案2
也尝试这个(以管理员身份运行脚本):
; Replace "Service name" with the service name you want restart.
; Make sure that you are using the correct service name
; shown in the properties for that service (not the Display name).
#Persistent
SetTimer, restart_Service, 10000
return
restart_Service:
time = %A_Hour%%A_Min%
If (time = 0800)
{
SetTimer, restart_Service, off
; Stop the service
RunWait, %comspec% /c "net stop Service name",, Hide
Sleep, 10000 ; Wait 10 seconds for the service to stopp (Just to be sure)
; Start the service
RunWait, %comspec% /c "net start Service name",, Hide
Sleep, 700000 ; sleep the rest of the 08:00 time.
SetTimer, restart_Service, on
}
return