Taskmanager

Description

Explication :
TaskManager est un gestionnaire des tâches comme taskmgr.
Il affiche tous les processus en cours dans une ListView, avec le chemin d'accès, le nombre de threads, l'ID et l'icone de chaque processus.
Il se rafraichit automatiquement et il y a une option pour mettre la fenêtre en TOPMOST (Toujours visible).
Il peut aussi terminer un processus.
Attention, TaskManager peut terminer un processus système critique, comme "csrss.exe". Donc vous pouvez le killer mais à vos risques et périls.

Détails :
- ListView
- Reconnaissance des icones de fichiers en fonction de l'extension(cf. la source de JackosKing : http://www.cppfrance.com/article.aspx?Val=2043)
- Utilisation des Process et des Modules (Merci une fois de plus à BruNews)

A faire :
- Corriger tout d'abord tous les énormes bugs !!!
- Possibilité de réduire l'application dans la barre des tâches (dès qu'il n'y aura plus de bugs).
- Peut-être rajouter d'autres informations comme la mémoire utilisée par un processus, tous les modules associés à ce processus...
- Si vous avez des propositions, n'hésitez pas!

Bugs connus :
- TaskManager provoque des erreurs sur d'autres applications lors de leurs exécutions (au lancement). C'est aléatoire. Par exemple, TaskManager est en exécution, on appelle Microsoft Word, et on a le message d'erreur suivant :

WINWORD.EXE - Erreur d'application
L'application n'a pas réussi à s'initialiser correctement (0xc0000142).
Cliquez sur OK pour arrêter l'application.

Ensuite on appuie sur OK et un autre message d'erreur apparait :

WINWORD.EXE - Erreur d'application
L'instruction à "0x0095746a" emploie l'adresse mémoire "0x0095746a". La mémoire ne peut pas être "read".
Cliquez sur OK pour terminer le programme.

Ensuite on peut rappeller le même programme et ca marche sans problème. Ces messages ne s'affichent pas que pour Word mais aussi pour d'autres applications.

- On a déjà eu un autre type de message d'erreur mais cette fois-ci que pour Windows Messenger. Ce message s'affiche pendant l'exécution de Messenger :

MSMSGS.EXE - Erreur d'application
L'exception Pas à pas
Une exécution en pas à pas ou une trace vient de se terminer.
(0x80000004) s'est produite dans l'application à l'emplacement 0x0013f172.
Cliquez sur OK pour terminer le programme.

- Les 2 derniers bugs se produisent aussi bien en debug qu'en release. Mais ce bug là ne se produit qu'en release : dès qu'on appelle Calc.exe (le calculatrice de Windows), TaskManager plante. Il affiche :

TaskManager.exe a rencontré un problème et doit fermer. Nous vous prions de nous excuser pour le désagrément encouru.

Et là on a le choix entre "Débogage", "Envoyer le rapport d'erreurs" et "Ne pas envoyer". Par contre, si la Calculatrice est appelé avant TaskManager, il n'y a pas ce problème. Ce bug n'apparaît que pendant l'exécution de TaskManager.

OS/Compilateur :
- testé sur Windows XP
- Compilé sous VC6

Remarques :
- Comme vous l'aurez remarqué, on a beaucoup de bugs qu'on n'arrive pas encore à résoudre. Donc si certains auraient les mêmes erreurs que nous, ou d'autres erreurs dont nous n'avons pas eu le "plaisir de découvrir", ou sinon qu'ils savent d'où viendrait le problème, laissez-nous vos commentaires. Merci d'avance pour votre aide.
- Projet réalisé par Xentor609 et Phoenix72.
- Faites nous part de vos commentaires à phoenix_darkspirit@hotmail.com et/ou xentor_609@hotmail.com

// ********************** MAJ **************************
Corriger :
- Le dernier bug, celui avec la Calculatrice, a été corrigé par BruNews (Merci beaucoup).
- La gestion des imagelist a été amélioré, car l'imagelist gardait toutes les icones (même ceux dont les processus étaient terminés)

Remarques :
- Un style a été rajouté (LVS_EX_FULLROWSELECT) par BruNews (encore merci)
- Les deux autres bugs apparaissent toujours de temps à autre, mais j'ai trouvé à quelle ligne il bloque (du moins pour le 1er bug) : dans GetTaskList(...), à la ligne : hProcessSnapME = CreateToolhelp32Snapshot(TH32CS_SNAPALL,pe32.th32ProcessID);
Il se bloque avec KERNEL32 mais on sait pas du tout pourquoi.
Si quelqu'un saurait comment résoudre cette erreur, laissez-nous vos commentaires.

// ********************** MAJ **************************
Corriger :
- Tous les bugs ont été corrigés.

Amélioration :
- Un menu a été ajouté.
- Possibilité de réduire l'application dans la barre des tâches
- Possibilité d'appeler le programme en mode silence (TaskManager.exe -s)
- Utilisation des mutex pour savoir si l'application a été déjà appelée (cf. la source de Kaid)
- Amélioration de la gestion entre la listview et les process
- Amélioration de la gestion de l'imagelist (merci à Kaid)

Remerciements :
- On remercie BruNews et Anacr0x pour leur aide, sans oublier Kaid pour l'imagelist (cf. le commentaire sur eXPlorer)

Remarques :
- Si quelqu'un aurait le moindre bug à signaler ou un idée à mettre en oeuvre, laissez-nous vos commentaires.
- Projet réalisé par Xentor609 et Phoenix72.

Codes Sources

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.