cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 27 juil. 2002 à 23:15
Très bon arguments, je m'incline...;(
cs_ManChesTer
Messages postés374Date d'inscriptionvendredi 20 octobre 2000StatutModérateurDernière intervention15 janvier 2021 27 juil. 2002 à 21:35
Delphiprog, je suis assez d'accord avec toi sauf sur un point ;o))
en effet le WND:=FindWindow(nil,nil); est utile, imagien que tu execute la procedure depuis une thread que tu a lancèe depuis une appli qui est ds le system tray, et que cette thread est une simple unit (sans form), dans ce cas, je ne trouverai pas de hanle vallide, je trouverai un hanle de thread ce qui n'est pas le type de handle dont la procedure a besoin (je sais c pas de la prog de nebii ds ce cas mais, je fais ce type d'appli assez règulierement)
Bon amusement avec la liste de tache et si vous trouvez une facon de forcer la fermeture d'une appli plantèe se serais gentil de me faire connaitre la mèthode utilisèe ;o))
Bon coding ....
ManChesTer
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 27 juil. 2002 à 10:29
Génial et merci pour ce code Ô combien utile !
J'aimerais cependant faire remarquer que :
WND:=FindWindow(nil,nil);
peut être remplacé par :
WND:= Handle;
puisque la fenêtre active possède nécessairement un handle.
Egalement, un autre point de détail : dans GetWindowText(Wnd,WndName,255), le dernier paramètre pourrait être remplacé par SizeOf(WndName) pour faciliter la maintenance du programme en cas de changement de taille du tableau de caractères, par exemple.
Enfin, "if WndName[0]>#0" peut aussi s'écrire "if StrLen(WndName) > 0", permettant de gagner en rapidité.
Mais, ça fonctionne très bien comme celà.
Félicitations.
31 oct. 2006 à 09:32
listbox1.Items.Add(WndName);
en mettant :
if IsWindowVisible(WND) then listbox1.Items.Add(WndName);
Oui je sais je m'amuse à détérer les post mais c'est une fonction que je cherchais et je me dit que sa pourra sûrement aider quelqun ;)
1 nov. 2004 à 16:17
30 juin 2003 à 22:58
merci :p
28 juil. 2002 à 02:15
27 juil. 2002 à 23:36
27 juil. 2002 à 23:15
27 juil. 2002 à 21:35
en effet le WND:=FindWindow(nil,nil); est utile, imagien que tu execute la procedure depuis une thread que tu a lancèe depuis une appli qui est ds le system tray, et que cette thread est une simple unit (sans form), dans ce cas, je ne trouverai pas de hanle vallide, je trouverai un hanle de thread ce qui n'est pas le type de handle dont la procedure a besoin (je sais c pas de la prog de nebii ds ce cas mais, je fais ce type d'appli assez règulierement)
Bon amusement avec la liste de tache et si vous trouvez une facon de forcer la fermeture d'une appli plantèe se serais gentil de me faire connaitre la mèthode utilisèe ;o))
Bon coding ....
ManChesTer
27 juil. 2002 à 10:29
J'aimerais cependant faire remarquer que :
WND:=FindWindow(nil,nil);
peut être remplacé par :
WND:= Handle;
puisque la fenêtre active possède nécessairement un handle.
Egalement, un autre point de détail : dans GetWindowText(Wnd,WndName,255), le dernier paramètre pourrait être remplacé par SizeOf(WndName) pour faciliter la maintenance du programme en cas de changement de taille du tableau de caractères, par exemple.
Enfin, "if WndName[0]>#0" peut aussi s'écrire "if StrLen(WndName) > 0", permettant de gagner en rapidité.
Mais, ça fonctionne très bien comme celà.
Félicitations.