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

 


Dernière réponse
Sujet : [VC] Kill un processus
proner78 Ok, ça fonctionne , C cool.
Bon en faite j'ai trouvé la fonction FindWindow qui me permet, puisque je connais le nom de la fenêtre que je rechercher de retrouver son Handle.
 
Du coup, pas de PB. Pour ceux que ça interresse, voilà le code (et oui C tout petit,  ;) )
 
HWND HwndWindows = FindWindow(NULL, "Nom de la fenêtre" ); // Le premier param, C la recherche par la classe, le second par le nom de la fenêtre
 if (HwndWindows != NULL) // Si la fenêtre est trouvée, on la ferme
 {
  SendMessageTimeout(HwndWindows, WM_CLOSE, NULL, NULL, SMTO_ABORTIFHUNG, 1000, NULL); // Bon ben C pas compliqué, j'envoie un message de cloture et met un timeout
 }
 else
  MessageBox(NULL, "Non je ne trouve pas le Handle", "Info", MB_OK); // La fenêtre n'existe pas ou est déjà fermée.
 
Voilà, merci encore, a++

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
proner78 Ok, ça fonctionne , C cool.
Bon en faite j'ai trouvé la fonction FindWindow qui me permet, puisque je connais le nom de la fenêtre que je rechercher de retrouver son Handle.
 
Du coup, pas de PB. Pour ceux que ça interresse, voilà le code (et oui C tout petit,  ;) )
 
HWND HwndWindows = FindWindow(NULL, "Nom de la fenêtre" ); // Le premier param, C la recherche par la classe, le second par le nom de la fenêtre
 if (HwndWindows != NULL) // Si la fenêtre est trouvée, on la ferme
 {
  SendMessageTimeout(HwndWindows, WM_CLOSE, NULL, NULL, SMTO_ABORTIFHUNG, 1000, NULL); // Bon ben C pas compliqué, j'envoie un message de cloture et met un timeout
 }
 else
  MessageBox(NULL, "Non je ne trouve pas le Handle", "Info", MB_OK); // La fenêtre n'existe pas ou est déjà fermée.
 
Voilà, merci encore, a++
youdontcare tiens, j'ai regardé un peu plus en détail, il y a une 'lib' spécialement pour tout ça, la 'tool help' - regarde du côté de CreateToolhelp32Snapshot(), tu peux énumérer les process, les threads, les modules, etc.
proner78 Ok, merci, je vais regarder tout ça!!!
youdontcare trouves le handle de la fenêtre (énumère les fenêtres filles à partir de GetDesktopWindow() - regarde le nom de la fenêtre, cherche s'il y a moyen de chopper le nom de l'exe), puis tu peux ensuite envoyer un WM_CLOSE ou [cherche voir, me souviens plus] à la fenêtre.  
 
ou utiliser GetWindowThreadProcessId() pour chopper l'id du process, puis TerminateProcess().
proner78 Bof, C le fichier qui configure la planification automatique.
Et si je fais quitter l'antivirus et que je lance mon appli ensuite, y a pas de problème.
 
Non, si CT une protection, elle serait vraiement ridicule.
 
Je cherche simplement une API qui me permet à la manière d'un Fin de tache de quitter ce "process".exe
 
Merci,
El_gringo Et tu crois pas que c une sécurité de l'anti virus, pour que, justement, un virus ne s'attaque pas au truc !?
Parce que, si c ça, à mon avis, t pas au bout de tes peines !
proner78 [:yoyoz]
proner78 Je dois modifier un .ini pour configurer une appli (AntiVirus)
J'ai mon programme qui modifie donc bien ce .ini, mais un processus en mémoire le régénère automatiquement.
 
C un executable et je connais son nom, comment puis-je coder ça dans mon appli, pour killer ce processus avant d'effectuer ma modif???
 
Merci d'avance

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