Ramener une application en 1er plan

cs_imanewin32
Messages postés
71
Date d'inscription
mardi 30 mars 2004
Statut
Membre
Dernière intervention
12 août 2004
- 9 août 2004 à 14:33
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
- 9 août 2004 à 17:46
pour éviter que mon application se lance plusieurs fois,j'ai utilisé
le code:
hSingle = ::CreateMutex(NULL, TRUE, m_pszExeName);
if (ERROR_ALREADY_EXISTS == GetLastError())
{
return FALSE;
}

c'est vrai que cette façon permet d'éviter que l'application se lance plus qu'une fois.mais,comment faire pour ramener l'application en 1 er plan si elle est déjà lancé???????????

merci d'avance!!!

6 réponses

BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
9 août 2004 à 14:46
J'y crois pas !!!
J'ai pose la demo y a 2 jours en source, faut regarder.

ciao...
BruNews, Admin CS, MVP Visual C++
0
cs_imanewin32
Messages postés
71
Date d'inscription
mardi 30 mars 2004
Statut
Membre
Dernière intervention
12 août 2004

9 août 2004 à 14:49
BruNews> j'ai pas compris ton explication!!!!!
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
9 août 2004 à 14:51
http://www.cppfrance.com/code.aspx?ID=25238
Tout est la en 2 versions

ciao...
BruNews, Admin CS, MVP Visual C++
0
cs_imanewin32
Messages postés
71
Date d'inscription
mardi 30 mars 2004
Statut
Membre
Dernière intervention
12 août 2004

9 août 2004 à 17:32
j'arrive pas à faire la traduction de votre code en le mien
enfaite moi je travaille avec MFC(sous visual 5)
et j'ai arrivé à faire le code
BOOL CFalEtiCoupeApp::InitInstance()
{
//pour éviter qu'une application se lance plusieurs fois
HANDLE hSingle;
hSingle = ::CreateMutex(NULL, TRUE, m_pszExeName);
if (ERROR_ALREADY_EXISTS == GetLastError())
{
SetForegroundWindow(((CDialog*)this)->m_hWnd);
return FALSE;
}
/////(...le reste)
}

mais apparement la fonction SetForegroundWindow ne donne aucun résultat.
que dois-je faire
aidez moi je suis débutante en programmation
0

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

Posez votre question
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
9 août 2004 à 17:39
Quand meme terrible, j'ai fourni du pret a l'emploi dans la source, ben non....

ciao...
BruNews, Admin CS, MVP Visual C++
0
BruNews
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
9 août 2004 à 17:46
if(IsMappedSysApp(szappname)) return 0;
Voila ce qu'il faut mettre au debut de ton prog, InitInstance ou autre machin de ce genre.

Dans le WM_CREATE (vois equivalent en sabir mfc) tu mets:
MapUnicSysApp(hmain, szappname);
ou hmain doit etre le hwnd de cette premiere fenetre de ton prog.
Faisable non ?

ciao...
BruNews, Admin CS, MVP Visual C++
0