Utilisation de Logger.exe
L’une des façons d’activer l’enregistreur d’événements consiste à exécuter le programme Logger.exe autonome. Il s’agit essentiellement d’un débogueur très petit qui ne peut prendre qu’une seule cible. Pour l’exécuter, incluez le nom de l’application cible sur la ligne de commande :
logger Target
Lorsque cette option est activée, elle charge l’application spécifiée et insère du code dans l’application cible qui passe à une routine qui charge et initialise Logexts.dll dans le processus de l’application cible. Il s’agit de « l’injection de l’enregistreur d’événements dans l’application cible ».
L’utilitaire Logger.exe et le module Logexts.dll sont les deux composants de ce véhicule Logger. Ils communiquent via une section de mémoire partagée qui inclut les descripteurs de fichier de sortie, le masque de catégorie actuelle et un pointeur vers la mémoire tampon de sortie du journal.
Une fenêtre intitulée Enregistreur d’événements (débogueur) s’affiche. Cette fenêtre affiche la progression de l’enregistreur d’événements.
Boîte de dialogue Modifier les paramètres
Une fois l’initialisation terminée et l’affichage initial terminé, la boîte de dialogue Modifier les paramètres s’affiche. Cela vous permet de configurer les paramètres de l’enregistreur d’événements. Les différents paramètres sont décrits ici :
Paramètres de l’API
Cette liste affiche les catégories d’API disponibles. Les catégories mises en surbrillance seront journalisées ; les catégories non mises en surbrillance ne seront pas. La première fois que vous exécutez Logger, toutes les catégories sont mises en surbrillance. Toutefois, lors des exécutions suivantes, l’enregistreur d’événements effectue le suivi des catégories sélectionnées pour une application cible donnée.
Si une catégorie est désactivée, les hooks de toutes les API de cette catégorie sont supprimés afin qu’il n’y ait plus de surcharge de performances. Les hooks COM ne sont pas supprimés, car ils ne peuvent pas être réactivés à volonté.
L’activation de certaines catégories uniquement peut être utile lorsque vous n’êtes intéressé que par un type particulier d’interaction que le programme a avec Windows, par exemple, les opérations de fichier. Cela réduit la taille du fichier journal et réduit également l’effet de l’enregistreur d’événements sur la vitesse d’exécution du processus.
Enregistrement
Cette section contient les cases d’option Activer et Désactiver . La désactivation de la journalisation entraîne la suppression de tous les hooks d’API afin de permettre au programme de s’exécuter librement. Les hooks COM ne sont pas supprimés, car ils ne peuvent pas être réactivés à volonté.
Inclusion /Liste d’exclusions
Cette section contrôle la liste d’inclusion/exclusion des modules. Il est souvent souhaitable de journaliser uniquement les appels de fonction effectués à partir d’un module ou d’un ensemble de modules donnés. Pour faciliter cela, Logger vous permet de spécifier une liste d’inclusion de module ou, sinon, une liste d’exclusion de module. Pour instance, vous devez utiliser une liste d’inclusion si vous souhaitez uniquement journaliser les appels d’un ou deux modules. Si vous souhaitez journaliser les appels effectués à partir de tous les modules à l’exception d’une courte liste de modules, vous devez utiliser une liste d’exclusions. Les modules Logexts.dll et Kernel32.dll sont toujours exclus, car l’enregistreur d’événements n’est pas autorisé à se journaliser lui-même.
Vider la mémoire tampon
Ce bouton vide la mémoire tampon de sortie actuelle. En ce qui concerne les performances, la sortie du journal est vidée sur le disque uniquement lorsque la mémoire tampon de sortie est saturée. Par défaut, la mémoire tampon est de 2 144 octets.
Étant donné que la mémoire tampon est gérée par l’application cible, l’écriture automatique de la mémoire tampon dans les fichiers journaux sur le disque ne se produit pas en cas de violation d’accès ou d’une autre erreur non récupérable dans l’application cible. Dans ce cas, essayez d’activer la fenêtre de l’application cible et appuyez sur F12 pour récupérer cette boîte de dialogue, puis appuyez sur Vider la mémoire tampon. Si ce n’est pas le cas, les fonctions les plus récemment journalisées risquent de ne pas apparaître dans les fichiers journaux.
Aller
Cela entraîne le début de l’exécution de l’application cible.
Exécution de l’application cible
Une fois que vous avez choisi les paramètres, sélectionnez Accéder. La boîte de dialogue se ferme et l’application cible commence à s’exécuter.
Si vous rendez la fenêtre de l’application cible active et que vous appuyez sur F12, elle se décompose en Enregistreur d’événements. Cela entraîne le blocage de l’application cible et la réapparition de la boîte de dialogue Modifier les paramètres . Vous pouvez modifier les paramètres si vous le souhaitez, puis appuyer sur Atteindre pour poursuivre l’exécution.
Vous pouvez laisser l’application cible s’exécuter aussi longtemps que vous le souhaitez. Si elle se termine normalement ou en raison d’une erreur, la journalisation s’arrête et ne peut pas être redémarrée.
Lorsque vous souhaitez quitter, sélectionnez Fichier | Quittez et sélectionnez Oui. Si l’application cible est toujours en cours d’exécution, elle est arrêtée.
Limitations de Logger.exe
Lorsque vous exécutez l’enregistreur d’événements via l’outil Logger.exe, il ne crée qu’un seul fichier de sortie : un fichier .lgv. Aucun fichier texte n’est écrit. Toutefois, un fichier .txt de taille zéro sera créé ; cela peut remplacer un journal de texte écrit précédemment par le débogueur.
Le fichier de sortie est toujours placé dans le sous-répertoire LogExts du bureau ; cet emplacement ne peut pas être modifié.
Ces limitations ne s’appliquent pas si vous exécutez Enregistreur d’événements via le débogueur et Logexts.dll.