Apporter un autre processus au premier plan la Fenêtre quand il a ShowInTaskbar = false

Nous ne veulent qu'une seule instance de notre application qui s'exécute à un moment donné. Donc, au démarrage, il cherche à voir si l'application est en cours d'exécution et si elle l'est, elle appelle SetForegroundWindow sur la Fenêtre Principale.

C'est tout bon et bien ... , pour la plupart..

Quand notre application démarre, il affiche un écran de démarrage et un formulaire d'ouverture de session. Ces deux formes ont ShowInTaskBar = false.

De ce fait, si vous essayez de démarrer une autre copie de l'application lorsque l'écran d'ouverture de session est de montrer, que le formulaire d'ouverture de session n'est pas porté à l'avant!

Surtout en tant que l'utilisateur ne peux pas le voir quoi que ce soit dans la barre des tâches ainsi, tous les ils la figure, c'est que l'application est duff et ne peut pas démarrer. Il n'y a aucune indication qu'il y a une autre instance en cours d'exécution.

Est-il un moyen de contourner ce problème?

  • Question: ne la définition de la propriété du Propriétaire du formulaire d'ouverture de session pas à résoudre ce ou n'ont aucun effet?
InformationsquelleAutor Mongus Pong | 2010-04-14