2009-11-05 11 views
1

Je crée une application avec C#.Afficher une instance en cours d'exécution dans une application à instance unique

J'ai réussi à transformer cela en une application d'instance unique en vérifiant si le même processus est déjà en cours d'exécution.

Process[] pname = Process.GetProcessesByName("SwapCardDesktop"); 
     if (pname.Length < 2) 
     { 
      // Launch Application 
     } 

J'ai l'intention d'avoir ici une autre fonctionnalité qui fait apparaître l'instance en cours d'exécution lors d'un redémarrage.

J'ai essayé d'appeler ShowWindowAsync() si l'application est déjà en cours d'exécution,

ShowWindowAsync(hWnd, 9); 

Mais cela ne parvient pas à mettre en place l'application lorsqu'elle est réduite au plateau.

Des suggestions à ce sujet?

+0

@Immanuel - La réponse de EKS devrait être acepté. Son premier lien est un excellent moyen de le faire, bien mieux que de vérifier le nom du processus. – stevehipwell

Répondre