Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2773 connectés 

  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  Processus à killer par wm_close

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Processus à killer par wm_close

n°1432128
HERIBERT
Posté le 27-08-2006 à 15:34:34  profilanswer
 

Ca fait un moment que je gargouille à chercher de la doc sur la façon de fermer une application depuis un prog.  
 
Je voudrais utiliser l'instruction WM_CLOSE .
 
Objectif : arrêter un processus que je connais par le nom, mais pas par son handle. Et comme tout est en anglais sur msdn-microsoft laboratoire etc...
 
Merci :jap:

mood
Publicité
Posté le 27-08-2006 à 15:34:34  profilanswer
 

n°1432308
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 28-08-2006 à 07:20:16  profilanswer
 

WM_CLOSE n'est pas une instruction, mais un message, que l'on envoie à l'application par SendMessage()


---------------
J'ai un string dans l'array (Paris Hilton)
n°1432322
HERIBERT
Posté le 28-08-2006 à 08:51:23  profilanswer
 

Harkonnen a écrit :

WM_CLOSE n'est pas une instruction, mais un message, que l'on envoie à l'application par SendMessage()


Voilà. Et pr l'envoyer par SendMessage(), il me faut désigner l'appli par son handle. Donc, je dois trouver son handle. Il faut procéder en plusieurs étapes. Au moins ces deux-là. Récupérer le handle d'une appli connue par son nom ? C'est GetHandle... qqch ?

n°1432325
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 28-08-2006 à 08:57:01  profilanswer
 

Tu peux utiliser la fonction FindWindow() pour ça, ça te renvoie le handle de la fenêtre que tu spécifies en paramètre


---------------
J'ai un string dans l'array (Paris Hilton)
n°1432327
HERIBERT
Posté le 28-08-2006 à 09:05:01  profilanswer
 

Harkonnen a écrit :

Tu peux utiliser la fonction FindWindow() pour ça, ça te renvoie le handle de la fenêtre que tu spécifies en paramètre


Au fait... Ca marche même si l'application n'a pas de fenêtre ? Je vise certains services.

n°1432335
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 28-08-2006 à 09:23:43  profilanswer
 

Ton service a une fenêtre cachée ou pas ? Ca peut arriver des fois. Tu peux le voir avec des outils comme Winspector ou Spy++. Dans ce cas, tu peux lui envoyer un WM_CLOSE.
Dans le cas contraire, tu peux utiliser TerminateProcess(), mais c'est une méthode un peu crade
 
edit: il me semble qu'il y a une fonction dédiée pour terminer un service, faudrait vérifier sur la MSDN


Message édité par Harkonnen le 28-08-2006 à 09:29:22

---------------
J'ai un string dans l'array (Paris Hilton)

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Delphi/Pascal

  Processus à killer par wm_close

 

Sujets relatifs
Comment savoir quel processus utilise tel fichier ?Processus de développement qui marchent (ou pas)
[c#] [1.1] WIM et Processus[SQL2000] processus sqlservr.exe utilise beaucoup de mémoire
tuer un processus sur un ordi distantSynchronisation de beaucoup de processus avec les Event
L attente processusOuvrir une nouvelle fenêtre shell avec un nouveau processus?
PID d'un Processus sous Windows 
Plus de sujets relatifs à : Processus à killer par wm_close


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)