c # WPF Maintenir une instance unique du chargeur
-
08-07-2019 - |
Question
J'ai un loader.exe avec Main () qui charge l'interface utilisateur dans WPF. Le fait est que je ne veux qu'une instance du loader.exe, comment puis-je l'obtenir?
Y a-t-il un moyen pour un utilisateur de cliquer sur loader.exe, il devrait vérifier si un loader.exe existant est en cours d'exécution et ne fait rien.
actuellement j'ai
loader.exe
avec
main()
....
..
Load UI
...
le chargeur n'a aucune idée de ce qu'il charge, etc. Je ne peux donc pas faire grand chose avec le projet du chargeur ...
Tout code d'aide est très apprécié
Merci d'avance.
La solution
Nous utilisons le code C # suivant pour détecter si une application est déjà en cours d'exécution:
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
}
Cordialement, tamberg
Autres conseils
Découvrez:
Vous pouvez également trouver une réponse plus détaillée dans le post suivant ici sur StackOverflow:
Quelle est la bonne façon de créer une application à instance unique?
Voici ma solution simple et utile: http://blogs.microsoft.co.il/blogs/maxim/archive/2010/02/13/single-instance-application-manager.aspx