[C++/QT] Eviter les instances multiples d'un programme ?

Eviter les instances multiples d'un programme ? [C++/QT] - C++ - Programmation

Marsh Posté le 15-05-2003 à 17:43:09    

hellow,
 
y'a-t-il un moyen d'empêcher le lancement d'un même programme plusieurs fois (comme winamp par ex.) ?
 
je pense pas qu'il existe de fonctions dédiées sous QT donc un bout de code c++ ça me va aussi  :D
 
(je bosse sous MSVC)
 
merci d'avance  :)

Reply

Marsh Posté le 15-05-2003 à 17:43:09   

Reply

Marsh Posté le 15-05-2003 à 18:27:03    

vais pas te filer le bout de code (ki prend 3 lignes), mais vais te dire comment faire : au debut de ton main (si y a un main dans qt), tu recherches si tu a deja une instance de ta fenetre. si oui, tu fais un "return ;"
 
en plus j'evite le qt donc je pourrais meme pas te donner la solution ideale tiens (sauf en pur win32)

Reply

Marsh Posté le 15-05-2003 à 18:28:48    

Konar a écrit :

vais pas te filer le bout de code (ki prend 3 lignes), mais vais te dire comment faire : au debut de ton main (si y a un main dans qt), tu recherches si tu a deja une instance de ta fenetre. si oui, tu fais un "return ;"
 
en plus j'evite le qt donc je pourrais meme pas te donner la solution ideale tiens (sauf en pur win32)


 
Ca c une solution de tafiole.
 
La vrai solution c'est avec CreateMutex/OpenMutex...

Reply

Marsh Posté le 15-05-2003 à 22:17:06    

konar_spreme a écrit :


La vrai solution c'est avec CreateMutex/OpenMutex...


ok je vais regarder ça, merci  ;)

Reply

Marsh Posté le 16-05-2003 à 08:06:28    

konar_spreme a écrit :


Ca c une solution de tafiole.
La vrai solution c'est avec CreateMutex/OpenMutex...


C'est une solution qui ne fonctionnera que sous windows (les pthread_mutex sous linux ne peuvent pas être nommés pour être global au système). interressant?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed