Lister les threads ouverts sur le système


Propriétés du code


Date de création : 23/11/2006 à 14:40:00
0 Commentaire(s)
  MadMatt

 

Présentation


Cette fonction renvoie la liste des threads ouverts sur le système.
Attention : ça ne renvoie pas que les threads d'un processus, cela renvoie TOUS les threads ouverts.

Le tableau des threads est passé en parametres ByRef, il est donc modifié par la fonction.

 

Code


' Fait la liste des threads qui s'executent
Public Sub ListThreads(ByRef tabThreadID() As Long)
    Dim hSnapshot As Long
    Dim Thread As THREADENTRY32, Compteur As Long
    ReDim tabThreadID(0) As Long
    Compteur = 0
    ' On crée une capture des threads du système
    hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0&)
    Thread.dwSize = Len(Thread)
    ' On prend le premier
    If Thread32First(hSnapshot, Thread) Then
        Thread.dwSize = Len(Thread)
        ' On parcourt tous les threads existants
        Do
            ReDim Preserve tabThreadID(Compteur) As Long
            ' On le liste
            tabThreadID(Compteur) = Thread.th32ThreadID
            Compteur = Compteur + 1
        Loop While Thread32Next(hSnapshot, Thread)
    End If
    CloseHandle hSnapshot
End Sub


 

Historique


Voici l'historique des modifications de ce code :
23/11/2006 : Correction dun petit bug
23/11/2006 : bug daffichage
23/11/2006 : changement du nom de la fonction
Le 30/12/2006 par MadMatt : Petit bug daffichage

 
 

Modifier le code

Seul les admins et l'auteur du code lui même peuvent modifier ce code.

 

Commentaires


Ajouter un commentaire


Vous devez être connecté pour pouvoir poster un commentaire.

 
 

Valid HTML 4.01 Transitional Valid CSS

Site web de Vb System Library version 1.3
Developpement et design réalisé par : Matthieu Napoli (MadMatt)
© 2007 Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
Temps d'execution de la page : 0.011 s
www.mnapoli.fr