WinDbg 预览 - 数据模型菜单

本部分介绍如何在 WinDbg 预览版调试器中使用数据模型菜单。

新建模型查询

使用“新建模型查询”对话框创建新的模型查询。 可以将任何内容放入普通 dx 命令中。

例如,指定 Debugger.Sessions 检查调试器会话对象。

New data model query dialog box.

有关调试器对象的常规信息,请参阅 dx (Display Debugger 对象模型表达式)

使用 LINQ 查询深入了解会话。 此查询显示运行最多线程的前 5 个进程。

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

Data model explore window showing process and threads.

数据模型资源管理器

使用数据模型资源管理器快速浏览命名空间中的每个 Debugger 数据模型对象。

Data model explorer window showing debug object sessions.

显示模式

使用显示模式在网格和层次结构显示模式之间切换。 可以右键单击列标题以隐藏或显示更多列。

网格模式可用于挖掘对象。 例如,下面是网格视图中的上一个顶级线程查询。

Data model explore window showing top threads.

单击任何带下划线的项目时,将打开新选项卡,并运行查询以显示该信息。

此查询显示即插即用设备树中的设备,这些设备按内核会话的物理设备对象的驱动程序的名称分组。

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

Data model explore window showing plug and play device tree in a grid view.

更改查询

使用更改查询更改活动数据模型窗口中使用的查询。


另请参阅

dx(显示调试器对象模型表达式)

使用 WinDbg 预览版进行调试