Processview ==> arborescence affichant les processus lances (+ permet de recuperer infos...)

3/5 (20 avis)

Vue 7 250 fois - Téléchargée 1 165 fois

Description

Salut, bon bah tant qu'à faire, après mes FileView et DriveView, je poste mon "ProcessView" ;)

C'est une arborescence qui permet d'afficher les différents processus lancés sur votre PC. L'arborescence sert à visualiser "qui a lancé qui". Les icones des processus sont affichées.

En plus de l'affichage du treeview, vous aurez accès à plein de fonctions sur les processus (tuer, changer priorité, énumérer...) et vous pourez récupérer toutes les infos sur la mémoire et les modules des processus.

Voici les différents events gérés par le contrôle ProcessView :

-Click
-Collapse
-DblClick
-Expand
-KeyDown
-KeyPress
-KeyUp
-MouseDown
-MouseMove
-MouseUp
-NodeClick

Voici les différentes fonctions du UserControl :

-Refresh (rafraichit la vue)
-SelectedProcess (récupère le processus sélectionné, le type de cette fonction est ProcessItem)
-Clear (vide la vue)
-GetVisibleCount (identique au Treeview)
-HitTest (identique au treeview)
-Processes ==> permet l'accès à toutes les fonctions sur les processus, à savoir :
  • SuspendProcess ==> suspend l'exécution d'un processus
  • ResumeProcess ==> enlève la suspension
  • GetProcessPathFromPID ==> récupère le path depuis le PID
  • ProcessNumber ==> nombre de processus lancés
  • GetProcessNameFromPID ==> récupère le NAME depuis le PID
  • TerminateProcessByPID ==> kill un process
  • GetProcessTimesByPID ==> récupère les TEMPS PROCESSEURS
  • GetProcess ==> récupère toutes les infos sur le processus, la mémoire ...
  • EnumerateModules ==> énumère les modules des processus
  • EnumerateProcesses ==> énumère les processus
  • ChangePriority ==> change la priorité
  • DoesPIDExist ==> renvoie si un process existe ou pas



Evidemment, les propriétés Nodes et SelectedItem sont gérées de la même façons que pour un TV normal (lecture + écriture).

Les différents propriétés :

-Sorted
-SelectedItem
-Nodes
-Object
-Style
-LineStyle
-Index
-hwnd
-BorderStyle
-Appearance
-Indentation
-HideSelection
-DisplayPath

Et finalement les différentes informations qui peuvent être récupérées sur les processus :
  • cntUsage As Long
  • th32ProcessID As Long
  • th32DefaultHeapID As Long
  • th32ModuleID As Long
  • cntThreads As Long
  • th32ParentProcessID As Long
  • pcPriClassBase As Long
  • dwFlags As Long
  • szExeFile As String
  • childWnd As Integer
  • szImagePath As String
  • procParentProcess As ProcessItem
  • procModulesCount As Long
  • procMemory As ProcessMemoryItem


infos sur la mémoire des processus :
  • PageFaultCount As Long
  • PeakWorkingSetSize As Long
  • WorkingSetSize As Long
  • QuotaPeakPagedPoolUsage As Long
  • QuotaPagedPoolUsage As Long
  • QuotaPeakNonPagedPoolUsage As Long
  • QuotaNonPagedPoolUsage As Long
  • PagefileUsage As Long
  • PeakPagefileUsage As Long


infos sur les modules des processus :
  • th32ModuleID As Long 'ID du module
  • th32ProcessID As Long 'ID du processus qui utilise le module
  • GlblcntUsage As Long 'compteur d'usage global pour toutes les instances présentes
  • ProccntUsage As Long 'commteur d'usage du module pour le processus
  • modBaseAddr As Long 'adresse de début du module en mémoire
  • modBaseSize As Long 'taille du module en mémoire
  • hModule As Long 'HMODULE du module
  • szModule As String 'nom du module
  • szExeFile As String 'path du module


NOTE !!! NOTE !!!!
==> L'UserControl récupère tout seul le privilege Debug, autrement dit vous POUVEZ TUER LES PROCESSUS SYSTEME, DONC FAITES GAFFE.

Un exemple montre succintement comment récupérer des infos sur les processus sélectionnés.

Source / Exemple :


'dans le zip
'avec un exemple, tout est ultra commenté

Conclusion :


NOTE !!! NOTE !!!!
==> L'UserControl récupère tout seul le privilege Debug, autrement dit vous POUVEZ TUER LES PROCESSUS SYSTEME, DONC FAITES GAFFE.

Ce code est relativement simple.

Si vous voyez des bugs, prévenez moi !

De même, si vous avez des suggestions, remarques, conseils, commentaires, critiques ...etc, n'hésitez pas ! Et notez également svp ;)

@+

(compatible Windows Vista)

(SVP si vous avez du temps, visitez https://sourceforge.net/projects/hexeditorvb/ et rapportez moi vos commentaires/bugs ^^)

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_Galain
Messages postés
1270
Date d'inscription
mardi 11 novembre 2003
Statut
Membre
Dernière intervention
24 juillet 2013
6 -
C'est Pâques : VB est résucité ! Alleluia mes frères !
violent_ken
Messages postés
1822
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
-
lol, meuuuhh non, faut pas dire des choses pareilles ;)
cs_EBArtSoft
Messages postés
4531
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
5 -
non vb n'est pas mort ... il est juste decedé :p
violent_ken
Messages postés
1822
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
-
Salut, merci pour le commentaire ^^

Et je confirme, VB n'est pas mort, héhé ^_-

@+
cs_JLN
Messages postés
373
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
17 juin 2013
-
Rien a dire que Bravo, comme d'ab du bon boulot... Rien que du bon boulot... VB n'est pas mort je vous le dis.

Bonne prog à tous.

@+ JLN

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.