Dicas sobre desenvolvimento de software, gestão e tributações

Rede Social

10 de dezembro de 2015

Validar processo em excecução com C#


Nesta dica vou mostrar uma forma de verificar se já existe um processo do seu aplicativo em execução na máquina com C#.
Para isso devemos utilizar a classe de diagnosticos nativa.
using System.Diagnostics;

Primeiro iremos saber qual é o processo do seu aplicativo
var seuProcesso = Process.GetCurrentProcess();

Depois iremos procurar se existe um outro processo com o mesmo nome que ele na lista de processos do windows
var processoIgualExecutando = Process.GetProcessesByName(seuProcesso.ProcessName).FirstOrDefault(p => p.Id != seuProcesso.Id);

Pronto com esse var já é possível saber se existe um processo aberto igual ao que você está abrindo.

Com isso pode-se por exemplo impedir que seja aberto um novo processo, evitando dois iguais sendo executados.
if (processoIgualExecutando != null)
{ seuProcesso.Kill(); }

0 comentários:

Postar um comentário