WinDbg - Menu Modèle de données

Cette section explique comment utiliser le menu du modèle de données dans le débogueur WinDbg.

Nouvelle requête de modèle

Utilisez la boîte de dialogue Nouvelle requête de modèle pour créer une requête de modèle. Vous pouvez placer ici tout ce que vous mettez dans une commande normale dx .

Par exemple, spécifiez Debugger.Sessions pour examiner les objets sessions du débogueur.

Capture d’écran de la boîte de dialogue Nouvelle requête de modèle de données dans WinDbg.

Pour plus d’informations générales sur les objets de débogueur, reportez-vous à dx (Display Debugger Object Model Expression).

Utilisez des requêtes LINQ pour approfondir la session. Cette requête montre les 5 principaux processus exécutant le plus de threads.

Debugger.Sessions.First().Processes.Select(p => new { Name = p.Name, ThreadCount = p.Threads.Count() }).OrderByDescending(p => p.ThreadCount),5

Capture d’écran de la fenêtre Exploration du modèle de données affichant les processus et les threads dans WinDbg.

Explorer de modèle de données

Utilisez l’Explorateur de modèles de données pour parcourir rapidement chaque objet de modèle de données dans l’espace de Debugger noms.

Capture d’écran de la fenêtre Explorateur de modèles de données avec des sessions d’objet de débogage dans WinDbg.

Mode d’affichage

Utilisez le mode d’affichage pour basculer entre le mode d’affichage grille et le mode d’affichage de hiérarchie. Vous pouvez cliquer avec le bouton droit sur les en-têtes de colonne pour masquer ou afficher d’autres colonnes.

Le mode grille peut être utile pour explorer les objets. Par exemple, voici la requête précédente des threads principaux en mode grille.

Capture d’écran de la fenêtre d’exploration du modèle de données affichant les threads supérieurs en mode grille dans WinDbg.

Lorsque vous cliquez sur un élément souligné, un nouvel onglet est ouvert et une requête est exécutée pour afficher ces informations.

Cette requête montre les appareils de l’arborescence des périphériques plug-and-play regroupés par nom du pilote de l’objet de périphérique physique pour une session de noyau.

Debugger.Sessions.First().Devices.DeviceTree.Flatten(n => n.Children).GroupBy(n => n.PhysicalDeviceObject->Driver->DriverName.ToDisplayString()) 

Capture d’écran de la fenêtre d’exploration du modèle de données présentant l’arborescence des appareils plug-and-play en mode grille dans WinDbg.

Requête de modification

Utilisez la requête de modification pour modifier la requête utilisée dans la fenêtre du modèle de données actif.


Voir aussi

dx (Display Debugger Object Model Expression)

Fonctionnalités WinDbg