fdiedler2000
Messages postés383Date d'inscriptionsamedi 29 janvier 2005StatutMembreDernière intervention 1 décembre 2008
-
8 avril 2007 à 22:39
fdiedler2000
Messages postés383Date d'inscriptionsamedi 29 janvier 2005StatutMembreDernière intervention 1 décembre 2008
-
9 avril 2007 à 18:58
Bonjour à tous !
Je voudrais faire un logiciel de gestion des programmes et donc je voudrais lister tous les applications installés sur une PC et ensuite pouvoir killer le processus asociés à l'application.
Le problème c'est que je ne sais pas comment récupérer le processus en fonction du chemin ou du nom de l'application (car parfois le processus et le nom de l'appli sont différents ) !!!
Il suffit donc de faire la relation entre ExecutablePath et ta variable de vérification, et de terminer le Processus en récupérant son caption.
Voici comment lister les infos :
' [WMI Win32 Helper - Win32_Process]
On Local Error Resume Next
Dim sComputerName As String, WMI_Obj As Object, WMI_ObjProps As Object, ObjClsItem As Object
sComputerName = Environ$("COMPUTERNAME")
Set WMI_Obj = GetObject("winmgmts:\" & sComputerName & "\root\cimv2")
Set WMI_ObjProps = WMI_Obj.ExecQuery("SELECT * FROM Win32_Process", , 48)
fdiedler2000
Messages postés383Date d'inscriptionsamedi 29 janvier 2005StatutMembreDernière intervention 1 décembre 2008 9 avril 2007 à 12:23
Re,
C'est ce que j'ai fais mais je n'ai pas les meme propriétés que toi...
De plus, si je met un point d'arret et bah le programme plante completement donc je peux meme pas regarder les propriétés des objets !!
Ce programme ne fait que lister des process (choses que je sais deja faire) mais il ne récupère pas du tout les infos que je cherche.
En fait, concretement voila ce que je veux faire car je crois que je m'exprime mal :
J'ai une fonction qui liste tous les programmes installés sur un PC (pas de pb)
J'ai une autre fonction qui liste tous les process (pas de pb)
Maintenant je veux quand on clique sur un programme installé sur le PC, qu'on le Kill ! C'est aussi simple
Pb : Le nom du process n'est pas toujours le meme que celui de l'exécutable de l'application ! Donc comment récupérer le process associé au programme ou alors comment récupérer à partir du process, le nom du programme associé (car msnmsg.exe ===> c'est pas tout le monde qui sait que c'est MSN Messenger le programme associé !! :) )
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 9 avril 2007 à 18:32
"C'est ce que j'ai fais mais je n'ai pas les meme propriétés que toi..."
>> et alors c'est pas bon ?
Avec les 2 propriétés que je t'ai donné, ça devrait le faire, sachant que pour mon exemple c'est marqué vb6, mais si tu utilise MSN, c'est bien le nom du Process qui doit apparaitre (et donc msnmsg.exe).
Pour le nom de l'appli, beh C:\Chemin\nom Appli.exe.
Il suffit de récupérer ce qui est à droite du \
@++
<hr width="100%" size="2" />
--Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
fdiedler2000
Messages postés383Date d'inscriptionsamedi 29 janvier 2005StatutMembreDernière intervention 1 décembre 2008 9 avril 2007 à 18:58
Slt,
Non c'est pas bon car si je liste les process avec ta méthode je vais récupérer msnmsg.exe sans problème et la path va etre C:\Chemin\msnmsg.exe et en aucun cas j'aurais récupérer "MSN Messenger" c'est à dire le nom réel de l'application !