Lister les handles (fichiers, clé de registres,...) ouverts par un programme (nt/2000/xp) en vb.net

Description

Ce code permet d'obtenir la liste des handles ouverts par un programme :
- fichiers
- sections
- clé de registre
- événement
- mutex
- ...

Ce code permet aussi de recherché un nom de handle dans tous les processus, pour savoir, par exemple, le nom de l'application qui a ouvert le fichier toto.txt... ou une clé de registre, ou un mutex...

Ce code liste aussi les programmes en execution. Il utilise des APIs natives non documentées pour NT/2000/XP non documentées...

Je précise que ce code ne fonctionne PAS pour les PROCESSUS appartenant à SYSTEM, SERVICE LOCAL, SERVICE RESEAU : ces processus ne peuvent être accéder que par du code en mode Kernel et pas par du code en mode User comme VB... pour accéder à ces processus, il faut un driver .sys...

C'est une traduction du code http://www.vbfrance.com/codes/LISTER-HANDLES-FICHIERS-CLE-REGISTRES-OUVERTS-PROGRAMME-NT_25915.aspx

Conclusion :


Pour plus d'infos sur les API Native de Windows NT/2000/XP, regarder le livre "Windows NT/2000 NATIVE API Reference" de Gary Nebbett

Ce code ne fonctionne pas sous 9x/ME.

Certain handle sont nommés, d'autres pas...

N'hésitez pas à commenter et à noter...

Codes Sources

A voir également

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.