Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

POURCENTAGE D'UTILISATION DU CPU PAR UN PROCESSUS (ENFIN !)


Information sur la source

Catégorie :Exécution Classé sous : processus, cpu, pourcentage, consommation, charge Niveau : Initié Date de création : 16/07/2006 Date de mise à jour : 11/08/2006 01:51:40 Vu / téléchargé: 8 479 / 1 025

Note :
9,67 / 10 - par 3 personnes
9,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (14)
Ajouter un commentaire et/ou une note


Description

Cliquez pour voir la capture en taille normale
Bonjour à tous

C'est avec un grand plaisir et après une bonne quinzaine d'heure de recherche et boulot que je vous présente enfin cette source, qui manquait à vbfrance.com depuis longtemps à en juger par le nombre de posts dans le forum à ce sujet.
Ce code permet de lister les processus tournant sur votre pc et, pour chaque processus, d'afficher sa consommation du CPU (processeur) en pourcentage (comme dans le gestionnaire des taches de windows).

Je sais que cette source n'existe pas sur ce site (si si j'en suis certain), à noter que tout cela n'aurait pas été possible sans le code de ShareVB qui présentait les api de PDH.dll (vous pouvez le trouver facilement avec le moteur de recherche en cherchant : PDH).
Donc un immense merci à ShareVB, qui retrouvera sa classe PDH dans mon code (que j'ai modifiée pour le coup).
 

Conclusion

Je suis bien sur ouvert à toute amélioration, proposition, je suis à votre écoute pour faire avancer ce prog dans le bon chemin.
A noter que les bout de codes listant les processus ne constituent pas l'interet de cette source, donc meme si je ne choisi par la meilleur façon de les lister on s'en fout, c'est la conso CPU qui nous interesse. Tout comme le design du prog d'ailleurs ;), on s'en fout un peu...



En espérant que cela vous serve, comme d'ab ;)

MadMatt
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

16 juillet 2006 13:04:45 :
Mise à jour
17 juillet 2006 20:54:36 :
mise à jour de la fonction pour éliminer l'extension d'un fichier
11 août 2006 01:51:40 :
le code marche maintenant dans n'importe quelle langue (avant il ne marchait que sur un windows "français")

Commentaires et avis

signaler à un administrateur
Commentaire de PCPT le 16/07/2006 15:39:04 administrateur CS

salut,
beh çà parraît niquel...
par contre GetFileNameWithoutExtension est mal foutue (utiliser instrrev), et c'est vrai que l'interface est très minim

9/10 ;)
++

signaler à un administrateur
Commentaire de yvesyves le 16/07/2006 18:25:53

Salut cette source existe en dans les sources en .NET je crois (j'en fais l'utilisation) mais c'est cool de l'avoir sorti sur Vb6. Merci

signaler à un administrateur
Commentaire de pHoEnIxFuRy le 17/07/2006 09:50:25

Est-il possible de connaitre le "Temps UC".
Je m'explique : j'ai une appli vb qui utilise un appli externe qui peut planter (analyse OCR).
Je le vois par exemple dans le gestionnaire de taches quand l'appli externe est à 99% au niveau CPU et avec un temps U.C. important (en moyenne elle monte à 4 secondes).
Mon idée serait de répérer ce plantage, de tuer le process et de continuer ensuite.

signaler à un administrateur
Commentaire de MadM@tt le 17/07/2006 17:32:43

PCPT > Merci, pour la fonction mal foutue faudrait que je regarde car je l'utilise dans un plus gros projet donc ça m'arrangerait si j'arrive à la faire mieux. Sinon l'interface on s'en fout un peu non ? lol
YvesYves> Merci aussi ;)
pHoEnIxFuRy> Je vois bien de quoi tu veux parler, et comme on peut le voir dans le gestionnaire des taches de windows je pense que c'est possible, mais j'ai exploré un peu tous les compteurs possibles pour les processus j'ai malheureusement pas trouvé.
Peut etre en le calculant, en se servant du % du processus, du % total du processeur, et du temps écoulé entre lequel tu calcule ça... A voir, mais pourquoi passer par le temps CPU, tu n'a qu'a regardé quel programme a le pourcentage le + élevé, si c'est pendant longtemps tu le supprime...
Sinon si tu veux voir la liste de tous les compteurs, regarde la source de ShareVB à propos de la libraire PDH

signaler à un administrateur
Commentaire de PCPT le 17/07/2006 19:29:59 administrateur CS

interface... ouai là c'est pas le principal ;)

fonction, j'aurais plutôt fait quelquechose de ce genre :

Public Function GetFileNameWithoutExtension(FileName As String) As String
    Dim lDotPos As Long
    lDotPos = InStrRev(FileName, ".")
    If lDotPos = 0 Then
        GetFileNameWithoutExtension = FileName
    Else
        GetFileNameWithoutExtension = Left$(FileName, lDotPos - 1)
    End If
End Function

çà évite des tableaux etc...
++

signaler à un administrateur
Commentaire de BruNews le 17/07/2006 20:23:32 administrateur CS

avec
D:\a.a\myfile
ça va donner quoi ???

signaler à un administrateur
Commentaire de MadM@tt le 17/07/2006 20:51:54

Merci PCPT, comme ça pas besoin de me creuser :D, je met à jour

Brunews, je récupère uniquement le nom des fichiers, pas leurs chemin d'accès. Donc j'ai que des blabla.exe à gérer. Mais merci d'avoir quand meme soulever la question c'est vrai que j'y avais pas pensé du tout de mon coté

signaler à un administrateur
Commentaire de pHoEnIxFuRy le 18/07/2006 14:17:32

Mon problème c'est que l'appli externe est lancée plusieurs centaines de fois consécutivement et chaque exécution dure en moyenne 4 secondes.
Lorsque cette appli traite un fichier "corrompu", elle reste bloquée dessus indéfiniment et je cherchais un moyen de déceler ça.
J'ai regardé la source de ShareVB et je n'y ai pas trouvé non plus ce que je cherchais.
Merci quand même et félicitations pour cette source.

signaler à un administrateur
Commentaire de joebarteamv le 23/07/2006 23:17:39

Bonjour à toi,code tres utile pour mon appli!merci de ta recherche et bonne continuation! 10/10

signaler à un administrateur
Commentaire de seppalele le 27/07/2006 18:33:20

Bonjour

Je suis jeune programmeur. J'aimerai jusye savoir si ton appli n'est pas adaptable sous VB.NET

merci

signaler à un administrateur
Commentaire de MadM@tt le 28/07/2006 12:40:00

JOEBARTEAMV > Merci ;)
SEPPALELE > Désolé je ne programme pas en vb.net, mais je pense que c'est possible, de ce que j'ai put voir j'ai l'impression que sous .net on a accès à plus d'info de ce genre et plus facilement.
Enfin à voir

signaler à un administrateur
Commentaire de MadM@tt le 11/08/2006 01:57:39

Pour tous ceux qui utilisait la première version de ma source : Attention ! elle ne marchait que sur un windows dont le langage était le français.

J'ai modifié mon code et maintenant il marche sous n'importe quel langage. (pour le coup je dis bravo à microsoft, c'est un peu comme s'ils faisait un langage de programmation en français mais qui ne marche que sur un windows français ^^)

Donc voilà normalement maintenant, aucun souci ^^

signaler à un administrateur
Commentaire de draluorg le 09/09/2006 23:43:30

Salut Mad,

Je suis tombe sur ta source en faisant la mienne, et j'ai releve quelques ptits problemes

Si il y a 2 processus du meme nom, tu cree le meme compteur!
Il faut que tu verifie si il y a deja un processus du meme nom et si oui ajouter un #1 derriere le nom du deuxieme (#2 si c le 3 eme etc..)

Si un processus se ferme, ton prog ne le vois pas et affiche un "" a la place de l'utilisation cpu
De meme pour les processus lance apres ton prog, ils n'apparaissent pas dans la liste...

Je viens de deposer une source qui gere tout ca, si ca t'interesse "http://www.vbfrance.com/codes/SYSTEM-INFO_39501.aspx"

++

signaler à un administrateur
Commentaire de MadM@tt le 10/09/2006 01:06:10

Salut seb,

En ce qui concerne les processus de meme nom, merci parce que effectivement j'avais pas du tout remarqué ce bug. Je vais m'empresser de le corriger car j'utilise cette source dans d'autres prog.

En ce qui concerne l'ouverture et la fermeture d'un prog, ben ce code n'est la que pour expliquer la technique pour récupérer l'info, après bien sur il y a plein de truc à paufiner autour, on peut rajouter plein d'infos etc...
En gros ce code n'est pas un projet complet, juste un exemple d'utilisation, c'est pourquoi je n'ai pas travaillé l'interface mais que le coeur du code.

Pour ton prog, oui c'est le genre de code qui m'interesse ^^, je m'y rend de ce pas ;)

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

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 charge CPU et memoire par service [ par kelk1 ] Bonjour, Je cherche a obtenir les memes info que dans le task manager !Merci pour votre aide CPU [ par mickeymouse0 ] Bonjour,Je cherche à connaitre la charge CPU d'une application que j'aurais au préalable lancée. J'ai trouvé beaucoup de code sur la charge CPU en gén utilisation cpu par processus [ par Adidas2 ] salut tous le mondequelqu'un aurait une idée de où chercher pour trouver l'utilisation processeur de chaque processus lancé (un peu comme dans le ctrl utilisation cpu par processus [ par Adidas2 ] Salut tous le mondeJe cherche à obtenir l'utilisation CPU de chaque processus lancé quelqu'un aurait une idée de la fonction à utiliser svp ?Langage : Figer l'activité de tous les processus [ par clementio ] Salut,Voilà, j'ai besoin de figer l'activité de tous les processus lancés sur mon pc jusqu'à une certaine condition.En fait, j'ai fait un prog qui dét Charge de l'uc par processus [ par violent_ken ] Violent Ken Bonsoir !J'aimerais savoir comment récupérer dans mon programme la charge de l'UC par processus, c'est a dire la consommation en Pourcentage CPU [ par Sinsitrus ] Salut !Quelqu'un saurait-il comment procéder pour afficher le pourcentage du CPU dans un label svp ?Merci d'avance----------OS        : Windows X Consommation CPU trop importante avec backgroundworkers [ par Children ] Bonjour, j'ai une créer une application composée de trois backgroundworker, les deux premiers gèrent une communiquation avec un server http (requêtes Info consommation plusieurs CPU sous Windows [ par man15372 ] Dans un domaine un peu plus pointu voici ma questionQuelqun a t il la solution pour récuperer la consommation des processeurs sur un PC Windows multip


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,920 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.