Agendador de tarefas - execute a tarefa se ela não estiver em execução
Você pode usar um script em lote semelhante ao abaixo e usar a Lista de tarefas e FindStr para verificar se o nome EXE do SpeedFan está sendo executado na memória. Com a lógica abaixo, Inicia o EXE, se não for encontrado em execução na memória.
Exemplo de script em lote
Certifique-se de substituir o valor SpeedFan.exe
pelo nome real do arquivo EXE executado quando você iniciar o aplicativo e ele estiver funcionando corretamente se for algo diferente no SET EXEName=SpeedFan.exe
.
Você precisará garantir que o caminho explícito completo para o EXE também esteja na lógica abaixo do que ele realmente é; portanto, basta substituir (no SET EXEFullPath=C:\Program Files\SpeedFan\SpeedFan.exe
) pelo caminho real do aplicativo EXE; depois que o sinal =
é onde você vai mudar isso.
Apenas agendado para ser executado com o Agendador de Tarefas a cada 1 minuto, 30 segundos ou, no entanto, você gostaria que esse processo fosse verificado se estava sendo executado ou não e, em seguida, se não fosse iniciado.
@ECHO OFF
SET EXEName=SpeedFan.exe
SET EXEFullPath=C:\Program Files\SpeedFan\SpeedFan.exe
TASKLIST | FINDSTR /I "%EXEName%"
IF ERRORLEVEL 1 GOTO :StartSpeedFan
GOTO EOF
:StartSpeedFan
START "" "%EXEFullPath%"
GOTO EOF