Récupérer le HWND du prog lancé avec ShellExecute ?

Résolu
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010 - 3 janv. 2007 à 14:20
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010 - 3 janv. 2007 à 20:42
Bonjour je voudrais savoir si on peut récupérer le handle de la fenetre principale(hwnd) d'un logiciel lancé avec ShellExecute.
Merci

5 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
3 janv. 2007 à 16:31
Un moyen plus sur est d'utiliser ShellExecuteEx, afin de récupérer le handle du processus.
Ensuite tu énumères les fenêtres (EnumWindows), et pour chacune tu compares les handles de processus (GetWindowThreadProcessId)

_____________________________________
Un éditeur de ressources gratuit pour Windows
3
racpp Messages postés 1909 Date d'inscription vendredi 18 juin 2004 Statut Modérateur Dernière intervention 14 novembre 2014 17
3 janv. 2007 à 14:53
Salut,
Si tu connais le titre de la fenêtre (barre de titre) ou sa classe (récupérable avec spy++) tu peux utiliser FindWindow() ou FindWindowEx().
0
wxccxw Messages postés 755 Date d'inscription samedi 15 mai 2004 Statut Membre Dernière intervention 30 janvier 2011
3 janv. 2007 à 15:54
si la fenetre a un titre du genre "Fenetre" tu fais :
HWND test = FindWindow("Fenetre",NULL);
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
3 janv. 2007 à 20:14
exemple ici:
OUVRE FENETRE TXT SANS FICHIER (WIN32)
http://www.cppfrance.com/code.aspx?id=23024

ciao...
BruNews, MVP VC++
0

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

Posez votre question
cs_supergrey Messages postés 475 Date d'inscription vendredi 27 juin 2003 Statut Membre Dernière intervention 20 septembre 2010
3 janv. 2007 à 20:42
Merci
0
Rejoignez-nous