romauto750
Messages postés45Date d'inscriptionmercredi 9 novembre 2005StatutMembreDernière intervention12 janvier 2012
-
24 avril 2007 à 11:21
romauto750
Messages postés45Date d'inscriptionmercredi 9 novembre 2005StatutMembreDernière intervention12 janvier 2012
-
25 avril 2007 à 09:35
Bonjour à tous,
Étant débutant je ne sais pas si ce post est au bon endroit mais voici ma question:
J'ai une application développée avec Visual studio 2005 en C++. De cette application j'aimerais, quand l'utilisateur cliquera sur un bouton, montrer une application déjà lancée sur le PC mais en arrière plan.
J'espere que j'ai été clair.
Merci à tous, bonne journée.
A voir également:
Montrer une application déjà lancée sur le PC en arrière plan
while (ok)
{
if (_tcsicmp(szExeFile, pe.szExeFile) == 0)
{
if (GetCurrentProcessId() != pe.th32ProcessID)
{
HWND hwnd = FindWindow(NULL, NULL);
while (hwnd)
{
if (!GetParent(hwnd))
{
GetWindowThreadProcessId(hwnd, &threadID);
if (pe.th32ProcessID == threadID)
{
SetForegroundWindow(hwnd);
ret = true;
break;
}
}
hwnd = GetWindow(hwnd, GW_HWNDNEXT);
}
}
}
ok = Process32Next(snap,&pe);
}
CloseHandle(snap);
}
return ret;
}
En fait, on commence par voir si le process est en mémoire. Si oui et que cela n'est pas le processsus du code en cours, on loupe sur toute les fenêtres principale de chaque appli du systeme (parent à NULL) et si elle fait partie du thread principal du process trouvé on la met au premier plan ...