Script Autohotkey para reiniciar o Serviço em determinado momento

0

O PC no meu local de trabalho tem o desktop remoto do chrome instalado e permite que eu trabalhe em casa remotamente. Ocasionalmente, o programa falha e requer que eu reinicie manualmente o serviço para que funcione novamente (Gerenciador de Tarefas - > Serviços - > clique com o botão direito do mouse em service - > restart).

Aparentemente, muitas orientações do Autohotkey na internet são para reiniciar um programa exe em vez de um serviço. Gostaria de saber se existe uma maneira de transformá-lo em um script e permitir que o Autohotkey mate automaticamente o serviço e reinicie-o todos os dias às 8h?

    
por Rili Toma 01.08.2016 / 17:48

2 respostas

0

Você já tentou definir as configurações de recuperação do serviço para apenas reiniciar o serviço em caso de falha? Posso imaginar um cenário em que isso não funcione corretamente, mas se o Windows detectar que o serviço falhou, ele poderá reiniciá-lo automaticamente sem precisar de um watchdog separado.

No Windows 7, você pode abrir a lista de serviços da seguinte forma:

  • Painel de controle > Ferramentas Administrativas > Serviços
  • Ou apenas execute "services.msc" na caixa de diálogo de execução

Quando a lista de serviços estiver ativa, localize o item de linha de interesse e abra as propriedades desse serviço.

Nas guias na parte superior, selecione Recuperação.

Para as opções de recuperação, você pode definir todas as 3 listas suspensas de falhas 1a, 2a e subseqüentes para "Reiniciar o serviço"

    
por 03.08.2016 / 06:06
0

Tente também isso (execute o script como administrador):

; 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
    
por 05.08.2016 / 22:11