Reconnaitre un executable en marche

Résolu
eridyms Messages postés 26 Date d'inscription samedi 19 décembre 2009 Statut Membre Dernière intervention 16 février 2011 - 25 sept. 2010 à 13:26
eridyms Messages postés 26 Date d'inscription samedi 19 décembre 2009 Statut Membre Dernière intervention 16 février 2011 - 27 sept. 2010 à 08:09
bonjour a tous ....
j'ai un petit probleme j'ai un projet que j'ai presque fini.Dans se projet,le bouton FERMER de mon menu me permet de reduire l'application et de mettre une icone dans le systeme tray.j'ai créer l'executable et j'ai remarquer que quand j'execute la premiere fois l'application et que je le reduis dans le system tray.si je clique encore sur l'icone de l'executable le projet s'execute et m'ouvre encore un autre menu comme si j'executais pour la première fois,menu que je peux encore reduis dans le systeme tray.de sorte que même sans fermer la premiere execution ,je peux faire une autre exécution,ce qui fait que j'ai plusieurs icône de mon projet dans le systeme tray....
Mon problème est ceci je veux que quand un exécutable du projet est en marche,....qu'il y ait un message qui me signale que il y a déjà une instance du programme en marche lorsque je veux exécuter une nouvelle fois

5 réponses

cs_Sipadan Messages postés 125 Date d'inscription lundi 5 août 2002 Statut Membre Dernière intervention 23 novembre 2011
25 sept. 2010 à 15:13
Hello,
A mettre dans ton form load:

If App.PrevInstance = True Then
MsgBox "L'application est déjà ouverte.", 16, "Erreur"
End
End If


@+, Yann.
3
raffika Messages postés 269 Date d'inscription dimanche 31 mai 2009 Statut Membre Dernière intervention 12 mars 2011
25 sept. 2010 à 13:39
Salut,
il y a sûrement plusieurs moyens de remédier à cela.
Ma première idée serait d'utiliser un fichier
dans le dossier du fichier exe, qui, au démarrage de
ton programme serait mis à jour, on mettrai par exemple
la valeur 1 lorsque ton programme débute, et changer
le fichier à la fermeture de l'application, on changerai
cette valeur pour la mettre à 0.
Donc dans le code du démarrage du programme,
vérifier si la valeur contenue est à 0 ou à 1,
et si cette valeur est déjà à 1, alors :
afficher un messagebox 'Le programme est déjà en cours
d'execution' et faire un End pour quitter le programme.
Le seul inconvénient serait que cela ne marcherais pas
si le fichier exe est dans un autre dossier, dans ce cas
il y aurait plusieurs fichiers contenant une 'variable'
à 0 et donc ne marcherais pas mais dans le cas d'une installation
normale cela marche. Voilà bonne prog.
0
Utilisateur anonyme
25 sept. 2010 à 14:21
oui sinon il existe App.PrevInstance qui renvoi un Boléen indiquant si une instance est déjà en cours.
a+
0
eridyms Messages postés 26 Date d'inscription samedi 19 décembre 2009 Statut Membre Dernière intervention 16 février 2011
25 sept. 2010 à 14:27
comment je vais utiliser la fonction App.PrevInstance
je suis un debutant.....merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
eridyms Messages postés 26 Date d'inscription samedi 19 décembre 2009 Statut Membre Dernière intervention 16 février 2011
27 sept. 2010 à 08:09
Ok ca marche très bien je vous en remercie...
j'ai encore une préoccupation.Dans mon projet j'utilise quatre(4) feuilles,3 sont des feuilles modal et une feuille(le menu)n'est pas modal.si une feuille modal est chargé, en voulant charger mon menu,le programma génere une erreur:"On ne peut afficher une feuille non modal sur une feuille modal"
ce que je veux c'est que en voulant charger mon menu(feuille modal) je veux que tous les feuilles charger soit décharger....comment faire..

eridyms......Merci
0
Rejoignez-nous