begin process at 2012 02 14 03:47:40
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Système

 > PROCESS THREADS MODULES HANDLES DANS UN TREEVIEW EN .NET ( OUI MADAME )

PROCESS THREADS MODULES HANDLES DANS UN TREEVIEW EN .NET ( OUI MADAME )


 Information sur la source

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Système Source .NET ( DotNet ) Classé sous :thread, process, handle, treeview, hwnd Niveau :Débutant Date de création :28/07/2003 Date de mise à jour :04/12/2004 01:35:40 Vu / téléchargé :16 990 / 1 196

Auteur : Alain Proviste

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Cette source est ma première tentative en vb .net.
il faut savoir que j'ai pas la msdn .net...
Qu'y-a-til dans cette source ? D'abord une forme avec pour unique contrôle un treeview. Les treeviews, entre vb6 et .Net, y a comment dire ? du changement. Alors j'ai plus galéré pour le treeview mais bref... Dans le treeview au lancement du soft s'affiche la liste des process ( éxécutables ) en cours comme on peut la voir dans ctrl-alt-suppr avec l'id et le handle de chaque process. Pour chaque procress est détaillé l'ensemble des ses threads et de ses modules ( dll et drv et je ne sais quoi )  et tout les handles qui dépendent de ce pross et les sous handles tout ça correctement hiérarchisé. Après on pourrait dans une amélioration future détailler tout ce qu'on peut sur les threads et les modules et les process et les handmes grâce aux nombreuses propriétés et méthodes qui sont fourni par system.diagnostics puis les apis de bases et faire une sorte ctrl-alt-suppr en encore plus détaillé.

Pour lister process, threads et modules on utilise les outis .net c'est très bien super pas de problèmes.

Mais après la liste des process s'affiche grâce aux fonction enumwindows et enumchildwindows et là je n'ai pas trouvé dans .net  des équivalents pour ne pas avoir à utiliser ces apis. Alors il a fallu les déclarer. Puis les utiliser. Mais comme chacun le sait ce sont des apis qui utilisent des callback de procédures et là c'est plus pareil que dans vb6 c'est encore plus bordélique.

Donc voilà, non seulement cette source m'a permis d'apprendre à accéder à windows à partir de .net mais aussi les fonction callbacks...

Ouah t'as vu t'as lu tout ça. ( je viens faire monter la moyenne nationnale de la lecture - et aussi des fautes surement )  


 Conclusion

Heu si je postais ça c'est pas ( seulement ) pour étaler ce que je sais faire, c'est mon premier soft en .net alors si des âmes se sentent de me dire "oui là, t'aurais pu..." moi j'écoute ( et éventuellement je remercie, de nombreux lots à gagner pour les meilleurs d'entre vous... )
Je suis ouvert à toutes les remarques.
Sinon si ça peut aider certains ça me fait plaisir, sincèrement.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

04 décembre 2004 01:35:40 :
orthographe des fonctions enumwindows pour les recherches

 Sources du même auteur

Source .NET (Dotnet) SAVOIR SI UNE FENETRE EST VISIBLE DANS LA BARRE DE TACHE ( ....
Source avec Zip TUTORIAL VB6 : UN CARNET D'ADRESSE / REPERTOIRE TELEPHONIQUE
Source .NET (Dotnet) EXECUTER EN TANT QUE EN .NET
Source .NET (Dotnet) FONCTION D'ACKERMAN
Source avec Zip Source .NET (Dotnet) VB.NET : DRAG & DROP DE FICHIER 'PAR EXEMPLE DEPUIS LE BURE...

 Sources de la même categorie

Source avec Zip Source avec une capture AUTORISER/REFUSER L'EXECUTION DE PROCESSUS par pierreh51
Source avec Zip Source .NET (Dotnet) CLONE/FORK DES FLUX DE LA CONSOLE : PERMETTRE LA REDIRECTION... par ShareVB
Source avec Zip Source .NET (Dotnet) DÉFRAGMENTER UN FICHIER par ShareVB
Source avec Zip Source .NET (Dotnet) ECRAN DE VEILLE : DÉTECTER LE LANCEMENT/DÉCLENCHER/EMPÊCHER par ShareVB
Source avec Zip Source avec une capture DESACTIVER / ACTIVER LES MISES EN VEILLES PC par Arsena

 Sources en rapport avec celle ci

Source avec Zip RÉCUPÉRER PID PROCESSUS, NOM DE FICHIER.EXE ET HANDLE FENÊTR... par Philippe734
Source avec Zip Source avec une capture Source .NET (Dotnet) YET ANOTHER PROCESS MONITOR par violent_ken
Source avec Zip Source .NET (Dotnet) DÉCOURVIR LES "BACKGROUND IO PRIORITY" DE VISTA par Willi
Source avec Zip OBTENIR LE MOT SURVOLLÉ DANS UN TREEVIEW par Renfield
Source avec Zip Source avec une capture MANIPULATION DES PROCESS ET HANDLES - OPTIONS INÉDITES... par Alain Proviste

Commentaires et avis

Commentaire de BruNews le 28/07/2003 22:37:42 administrateur CS

DWORD GetWindowThreadProcessId(HWND hWnd, LPDWORD lpdwProcessId);
en VB serait (j'espere, tu rectifieras):
mettre le 1er param Byval, le second Byref !!!
Dim processID As Long, thread As Long
thread = GetWindowThreadProcessId(hWnd, processID);
au retour tu as processID de rempli et le thread.

Commentaire de Alain Proviste le 29/07/2003 20:15:12 administrateur CS

Merci j'ai mis la source ce matin en utilisant cette api mais merci quand même le hasard fait bien les chose.

Commentaire de OverDarck le 03/05/2005 11:23:08

wow impressionant, mais quand meme il me semble que le but de .NET est de ne pas utiliser d'API....
enfin bon sa merite un 10 ca !!

Commentaire de Alain Proviste le 06/05/2005 18:37:56 administrateur CS

ben disons que même si effectivement .net permet de squizer certaiens api ( comme c le cas pour enumprocesses ici ) Tout n'est pas implémenté et dans ce cas on est bien obligé de retomber sur enumwindows :)

Commentaire de surfzoid le 02/11/2005 21:35:03

Trés trés cool 10/10
Ca ma permit de me debarrasser d un pb en effet souvant je veut quiller plusieur processus et avec le taskmngr de windows ça soul il faut les faire un par un donc en partant de ton code qui je repete est excelent, j ai fait :

Deplacer ces déclaration de variables dans la partie public comme suit
Public Class frmPrinc
    Inherits System.Windows.Forms.Form
    Dim Proc As System.Diagnostics.Process
    Dim ProcThread As System.Diagnostics.ProcessThread
    Dim Node As System.Windows.Forms.TreeNode
    Dim mdl As System.Diagnostics.ProcessModule

dans les propriété du treewview ===> option Checkboxes = true
                                ===> option sorted = true


et j ai rajouter un bouton ===>

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim i
        Node.Expand()


        For i = 0 To Node.Nodes.Count - 1
            Dim tpm = Node.Nodes(i).Checked
            If Node.Nodes(i).Checked = True Then
                Dim MyProcces As Process
                Dim Procces() As Process
                Dim instance As Process

                Procces = MyProcces.GetProcessesByName(Node.Nodes(i).Text)
                For Each instance In Procces
                    instance.Kill()
                Next
            End If
        Next i
        Node.Nodes.Clear()
        IniTreeview()
    End Sub



voili voila, pas trés élégant certe mais efficasse; reste a pofiner l hestétique et autre détails
Bp et @++


Commentaire de surfzoid le 02/11/2005 21:37:02

Sory ct pas quiller mais Killer

Commentaire de Alain Proviste le 03/11/2005 12:18:26 administrateur CS

je vais très prochainement publier une série de classes bien plus élégantes que ce code, ce sera très réexploitable, des arborescences & co comme je les aime, mais ce sera en c# ...

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Récupérer le handle d'un contrôle qui n'a pas de fonction ".hwnd" !!!!!!!!!!!!!!!!! please help ! [ par Blousé ] Pour pouvoir donner le look office 2000 (fait à partir d'une des sources du site...) à mes contrôles, j'utilise forms 2.0, mais le prob, c que pour le handle (hwnd) et activeX [ par booth ] bonjour,là je cale, car j'ai une fonction qui nécessite d'avoir le handle en parametre, le truc c'est ke j'ai pas trouvé où je peux sortir cette propr Process thread mémory... [ par nicolas12 ] bonjour a vousje cherche à lire et a stoquer sous forme de fichier toutes les plages mémoires qu'une application utilise, et a modifier automatiquemen API ShellExecute [ par jockos ] Salut,LE premier paramètre de la méthode Api ShellExecute est un Long qui a pour nom Hwnd...J'ai été voir sur la MSDN et il semblerai que ce soit l'ha Handle hWnd - descripteur Fenêtre [ par vbost ] Je trouve pratique d'utiliser les descripteurs de fenêtres afin de pouvoir naviguer d'une fenêtre à l'autre (comme de la fenêtre appellée vers la fenê VB.Net: Utilisation de Graphics.FromHwnd [ par darollinghobbit ] Bonjour, Je voudrai dessiner sur mon form sans utiliser l'event Paint et j'ai trouvé cette subPublic Sub FromHwndHwnd(e As PaintEventArgs)' Get handl handle aléatoire avec FindWindow [ par dogeater ] Bonjour, j'utilise Microsoft Visual Basic 2005 express beta.Le code ci dessous me retourne un handle aléatoire, il me renvoie un nombre même si il n' handle , exe , thread, PID, ModuleID [ par finelame ] Bonjour tout le monde,Bon voila ... j'ai une toute petite kestion : comment ca marche les handle , exe , thread, PID, ModuleID .... et blabla .. tout Pourcentage d'un processus thread ou process CPU [ par DavidT ] Comme le gestionnaire de tache, il existe la possibilité de de visualiser sur un système NT la mémoire physique consommée par un process déterminé par Remplissage d'un TreeView par un thread [ par ofeelfree ] Bonjour,Voici mon problème : j'ai un formulaire qui contient un TreeView, et une méthode qui remplit ce TreeView avec la liste des ordinateu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales