Skip to main content

RegMon pour Windows v7.04

Par Mark Russinovich et Bryce Cogswell

Paru le 01 novembre 2006

 

Introduction

Remarque : Filemon et Regmon ont été remplacés par Process Monitor sur les versions de Windows depuis Windows 2000 SP4, Windows XP SP2, Windows Server 2003 SP1 et Windows Vista. Filemon et Regmon ont été conservés pour la prise en charge de système d'exploitation d'ancienne génération, notamment Windows 9x.

Regmon est un utilitaire de surveillance du Registre qui vous indique les applications qui accèdent à votre Registre, les classes auxquelles elles accèdent et les données de Registre qu'elles lisent et écrivent, le tout en temps réel. Cet utilitaire avancé offre davantage de fonctionnalités que les outils de Registre statiques et vous permet de voir et de comprendre exactement comment les programmes utilisent le Registre. Avec les outils statiques, vous pourrez voir quelles valeurs et clés de Registre ont été modifiées. Avec Regmon, vous verrez en quoi ces valeurs et clés ont été modifiées.

Regmon fonctionne sous Windows NT/2000/XP/2003, Windows 95/98/Me et Windows 64 bits pour x64.

Top of page Haut de page

Installation et utilisation

Si vous avez des questions ou des problèmes concernant Regmon, visitez le forum Sysinternals Regmon.

Installez Regmon en copiant les fichiers sur votre disque dur et démarrez-le en exécutant Regmon.exe. Les éléments de menu et les boutons de la barre d'outils vous permettent d'activer/de désactiver la surveillance, de désactiver la capture d'événements, de contrôler le défilement de la liste affichée et d'enregistrer les contenus de la liste affichée dans un fichier ASCII.

Utilisez la boîte de dialogue Filter, accessible par un bouton de la barre d'outils ou la sélection du menu Option|Filter/Highlight et sélectionnez les données à afficher en mode liste Le caractère générique « * » correspond aux chaînes arbitraires et les filtres ne tiennent pas compte de la casse. Seuls les résultats indiqués dans le filtre d'inclusion mais qui ne sont pas exclus du filtre d'exclusion, s'affichent. Utilisez « ; » pour séparer plusieurs chaînes dans un filtre (par ex. « regmon;software »).

Par exemple, si le filtre d'inclusion est « HKLM » et le filtre d'exclusion est « HKLM\Software », toutes les références aux touches et valeurs sous HKLM, sauf celles sous HKLM\Software seront surveillées.

Les caractères génériques permettent la recherche de modèles complexes, permettant la recherche d'accès au Registre spécifiques par des applications spécifiques, par exemple. Avec le filtre d'inclusion « Winword*Windows », Regmon afficherait uniquement les accès par Microsoft Word aux clés et valeurs comprenant le mot « Windows ».

Utilisez le résultat spécifique du filtre de surbrillance que vous souhaitez mettre en surbrillance dans la liste de résultats affichée. Sélectionnez les couleurs de surbrillance avec Option|Highlight Colors.

Regmon permet de dater les événements ou indiquer la durée écoulée depuis la dernière fois que vous avez vidé la fenêtre de résultat (ou depuis le dernier démarrage de Regmon). Le menu Options et le bouton d'horloge de la barre d'outils vous permettent de basculer entre les deux modes. Le bouton de la barre d'outils affiche le mode actuel à l'aide d'une horloge ou d'un chronomètre. L'affichage du champ d'heure dans les résultats permet d'afficher le nombre de secondes qu'il a fallu au système de fichiers sous-jacent pour traiter des requêtes particulières.

Lorsque vous voyez une clé ou une valeur de Registre dans le résultat Regmon que vous souhaitez modifier, il vous suffit de double-cliquer sur la ligne qui inclut la référence (ou d'utiliser le bouton de la barre d'outils de Regedit) et Regmon vous enverra directement à la valeur spécifique à l'aide de Regedit.

Cliquez ici pour en apprendre plus sur la fonction de surveillance de démarrage de Regmon, disponible sous Windows NT.

Top of page Haut de page

Fonctionnement de Regmon

Le noyau de Regmon sous Windows 9x se trouve dans le pilote de périphérique virtuel, Regvxd.vxd. Il est chargé de façon dynamique et lors de son initialisation, il utilise le raccordement de service VxD (pour plus d'informations, consultez l'article paru dans la revue Dr. Dobb's Journal de mai 1996 sur le raccordement de service VxD) pour s'insérer sur la chaîne d'appel de 16 fonctions d'accès de registre dans le noyau Windows 95 (le Gestionnaire de machine virtuelle). Toute activité du Registre, que ce soit à partir de programmes 16 bits, d'applications Win32 ou de pilotes de périphérique, est dirigée vers ces routines. Par conséquent, Regmon intercepte toute activité du Registre ayant lieu sur une machine.

Sous Windows NT, 2000 et XP, Regmon charge un pilote de périphérique qui utilise une technique innovante pour NT appelée le raccordement système-appel. Lorsqu'un composant de mode utilisateur appelle un système privilégié, le contrôle est transféré à un gestionnaire d'interruption logicielle dans NTOSKRNL.EXE (le noyau du système d'exploitation de Windows NT). Ce gestionnaire prend un numéro d'appel système, qui est transféré à un registre de machine, et l'indexe dans une table de service système pour rechercher l'adresse de la fonction NT qui traitera la requête. En remplaçant les entrées de cette table avec les pointeurs pour raccorder les fonctions, il est possible d'intercepter et de remplacer, d'accroître ou de surveiller les services système NT. Regmon, qui raccorde uniquement les services associés au Registre, est en fait un simple exemple de cette fonction en action.

Sous Windows. NET Server, Regmon tire parti d'un nouveau mécanisme de rappel du Registre du système d'exploitation pour enregistrer et recevoir des informations sur les accès au Registre à mesure qu'ils surviennent. Lorsque vous exécutez Regmon sur .NET Server, il charge une version du pilote Regmon en utilisant les rappels.

Lorsque RegMon détecte un appel d'ouverture, de création ou de fermeture, il met à jour une table de hachage interne servant de mappage entre les descripteurs de clé et les noms de chemin du Registre. Lorsqu'il détecte des appels basés sur des descripteurs, il recherche le descripteur dans la table de hachage pour obtenir le nom complet et l'afficher. Si un accès basé sur un descripteur référence une clé ouverte avant le démarrage de RegMon, RegMon ne trouve pas le mappage dans sa table de hachage et présente tout simplement la valeur du descripteur à la place.

Les informations sur les accès sont vidées dans un tampon ASCII qui est régulièrement copié dans l'interface utilisateur en vue de son affichage dans la zone de liste.

Pour des informations plus détaillées sur le fonctionnement de Regmon sous Windows NT, consultez les articles :

  • « Windows NT System Call Hooking, » par Russinovich et Bryce Cogswell, Dr. Dobb's Journal, janvier 1997.
  • « Au cœur des utilitaires NT », Windows NT Magazine, février 1999.

Top of page Haut de page

Utilitaires associés

Les outils de surveillance suivants sont également disponibles auprès de Sysinternals :

Top of page Haut de page

Pour en savoir plus

Vous trouverez ci-dessous des sources d'informations complémentaires sur les registres Windows NT/2000/XP et Windows 9x/Me :

  • Inside Windows 2000, 3rd Edition par David Solomon et Mark Russinovich, 2000
  • « Examining the Windows 95 Registry » par Mark Russinovich et Bryce Cogswell, Windows Developer's Journal, octobre 1996
  • "« Au cœur du Registre de Windows NT » par Mark Russinovich, Windows NT Magazine, avril 1997
  • "«  Inside the Windows 95 Registry » par Ron Petrusha, O'Reilly and Associates, 1996
  • "«  Managing the Windows NT Registry » par Paul Robichaux et Robchauxg, O'Reilly and Associates, 1998
  • "«  Windows 98 Registry For Dummies »par Glenn Weadock, IDG Press, 1998
  • "«  Using the Windows 98 Registry » par Jerry Honeycutt, Que, 1998

Top of page Haut de page

Articles de la base de connaissances Microsoft sur Regmon

Les articles de la base de connaissances Microsoft suivants font référence à Regmon pour le diagnostic et le dépannage de divers problèmes :


Top of page Haut de page