c # WPF Mantener instancia única del cargador
-
08-07-2019 - |
Pregunta
Tengo un loader.exe con Main () que carga la 'UI' en WPF, lo que pasa es que solo quiero una instancia del loader.exe, ¿cómo puedo lograrlo?
¿Hay alguna forma en que un usuario haga clic en loader.exe para verificar si un loader.exe existente se está ejecutando y no hace nada?
actualmente tengo
loader.exe
con
main()
....
..
Load UI
...
el cargador no tiene idea de lo que se está cargando, etc., así que no puedo hacer muchas cosas con el proyecto del cargador ...
Cualquier código de ayuda n es muy apreciado
Gracias de antemano.
Solución
Utilizamos el siguiente código C # para detectar si una aplicación ya se está ejecutando:
using System.Threading;
string appSpecificGuid = "{007400FE-003D-00A5-AFFE-DA62E35CC1F5}";
bool exclusive;
Mutex m = new Mutex(true, appSpecificGuid, out exclusive);
if (exclusive) {
// run
} else {
// already running
}
Saludos, tamberg
Otros consejos
Echa un vistazo a:
Además, puede encontrar una respuesta más detallada en la siguiente publicación aquí en StackOverflow:
¿Cuál es la forma correcta de crear una aplicación de instancia única?
Esta es mi solución simple y útil: http://blogs.microsoft.co.il/blogs/maxim/archive/2010/02/13/single-instance-application-manager.aspx