SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: colosoderada en Miércoles 21 de Diciembre de 2005, 12:13

Título: ¿como Pueda Evitar Que Se Ejecute 2 Veces Programa
Publicado por: colosoderada en Miércoles 21 de Diciembre de 2005, 12:13
:blink:

Hola a todo el mundo me gustaría saber como se puede hacer para que cuando se ejecute un programa si ya está corriendo en memoria o en el sitema operativo "bueno que ya está siendo ejecutando actualmente" no me permite ejecutarlo otra vez varias veces.

Alguna idea de como lo puedo hacer ???????

colosoderada@yahoo.com
Título: Re: ¿como Pueda Evitar Que Se Ejecute 2 Veces Programa
Publicado por: joanca en Miércoles 21 de Diciembre de 2005, 13:24
Hola que tal.

Puedes hacerlo fácilmente incluyendo en el main del programa el siguiente código :

Código: Text
  1. Process [] aAplica = Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName);
  2. if (aAplica.Length > 1)
  3. {
  4.   MessageBox.Show("La Aplicación ya se encuentra en Proceso");
  5.   return;
  6. }
  7.  

Ahora bien, se podría dar el caso de que cambiases el nombre del programa y lo lanzases igualmente, así que después del código anterior añade este :

Código: Text
  1. bool bAplica;
  2. Mutex oMutex = new Mutex(true, "NombreAplicacion.exe", out bAplica);
  3. if (!bAplica)
  4. {
  5.   MessageBox.Show("La Aplicación ya se encuentra en Proceso");
  6.   return;
  7. }
  8.  

Y ahora ya puedes lanzarla :

Código: Text
  1. Application.Run(new Form1());
  2.  

Espero que te sirva como me sirve a mi.

Un Saludo.
Título: Re: ¿como Pueda Evitar Que Se Ejecute 2 Veces Programa
Publicado por: colosoderada en Miércoles 21 de Diciembre de 2005, 16:14
Muchas gracias va perfecto.
Salu2.
Título: Re: ¿como Pueda Evitar Que Se Ejecute 2 Veces Programa
Publicado por: JuanK en Miércoles 21 de Diciembre de 2005, 16:14
Excelente joanca, no sabia como ahcer eso  :comp:  :smartass:
Título: Re: ¿como Pueda Evitar Que Se Ejecute 2 Veces Programa
Publicado por: Soultaker en Miércoles 21 de Diciembre de 2005, 22:33
Cita de: "JuanK"
Excelente joanca, no sabia como ahcer eso  :comp:  :smartass:
Que cosa, no de que ya lo habias hecho eso  <_< si no te acuerdas chequea este enlace (http://foros.solocodigo.com/index.php?showtopic=14085&hl=process)  ;)

 :comp:
Título: Re: ¿como Pueda Evitar Que Se Ejecute 2 Veces Programa
Publicado por: JuanK en Jueves 22 de Diciembre de 2005, 06:03
nunca habia hecho lo del mutex
Título: Re: ¿como Pueda Evitar Que Se Ejecute 2 Veces Programa
Publicado por: ronald110 en Viernes 23 de Marzo de 2007, 04:40
o tambien lo q podes hacer es te creas un formulario midle( no se si esta bien escrito que almacene ventanitas internas) y an tes de cargar o llamar a un formulario desde tu menu de programas disponibles extraes el vector de programas q te devulve el formuladio midle contenedor y ves si esta ya instanciado etc
salu2
bye