verificar se um programa está sendo executado, se não for, execute-o?

1

Existe uma maneira no Windows de verificar se um programa está em execução (nesse caso, um aplicativo java) e, se ele não estiver em execução (devido a uma falha), executá-lo novamente?

    
por glisignoli 04.08.2010 / 14:30

1 resposta

3

Use o PowerShell:

get-process name-pattern

retornará detalhes para cada processo correspondente a name-pattern . Se não houver correspondência, nenhum processo aplicável será executado:

if (@(Get-Process MyProcessName).Length -eq 0) {
  MyProcessName ...
}

(Usando @(...) para garantir que Get-Process retorne uma matriz em todos os casos.)

NB. Se você precisar que isso seja executado com frequência, outras opções também devem ser consideradas (por exemplo, os alertas do Monitor de desempenho podem iniciar um aplicativo ou até mesmo um serviço personalizado).

    
por 04.08.2010 / 14:35