FERMER UN PROGRAMME, UNE APPLICATION, UNE FENÊTRE... D'APRÈS UNE PARTIE DE SON N

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 22 avril 2010 à 13:30
VBsearch Messages postés 50 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 22 août 2009 - 3 mai 2010 à 13:25
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/51664-fermer-un-programme-une-application-une-fenetre-d-apres-une-partie-de-son-nom

VBsearch Messages postés 50 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 22 août 2009
3 mai 2010 à 13:25
On parle ici de ce que tu as fait mais pas de ce que je sais ou ce que je dois faire.
cs_RENAUD34 Messages postés 18 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 4 octobre 2007
3 mai 2010 à 08:38
J'ai mis un code allant à l'essentiel de sa fonctionnalité pour plus de lisibilité. Evidemment qu'une gestion d'erreur est nécessaire, ainsi qu'un test sur le paramètre... mais pour cela il va falloir te sortir les doigts et faire un peu plus qu'un copier-coller.
Si tu veux une listbox pour choisir l'appli à fermer va voir le source d'Antislash http://www.vbfrance.com/codes/MASQUER-AFFICHER-FER MER-FENETRES-ACTIVES_4596.aspx
VBsearch Messages postés 50 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 22 août 2009
2 mai 2010 à 01:49
Quand on exécute avec un nom partiel tel que décrit dans le premier paramètre, c'est ton application qui est fermée avec une erreur: La fenêtre est invisible mais reste chargée en mémoire. Une gestion d'erreurs serait indispensable.
Donc l'idée de Renfield est à voir et appliquer.
Tu pourras peut-être ajouter une ListBox pour y mettre les fenêtres actives et choisir celle(ou celles) qu'on veut fermer.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 avril 2010 à 14:24
Dommage qu'il faille fournir un hWnd a la base, ca perd de snon interet...

peut etre passer par un EnumWindows

pour scanner toutes les fenetres ouvertes...
cs_RENAUD34 Messages postés 18 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 4 octobre 2007
22 avril 2010 à 13:58
Exact, on peut remplacer :
PostMessage FindWindow(IDfenetre, NomFenetre), &H10, 0, 0
par :
PostMessage tHwnd, &H10, 0, 0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 avril 2010 à 13:30
j'utilise la ligne de commande tskill, perso...

quel interet de faire :
PostMessage FindWindow(IDfenetre, NomFenetre), &H10, 0, 0

alors que tu as deja son handle : tHwnd
Rejoignez-nous