windbg-scripts
is a collection of JavaScript debugger extensions for WinDbg.
- basics: various examples of basic usage of various APIs,
- parse_eh_win64: example of extending the data-model with exception handling related information (cf Debugger data model, Javascript & x64 exception handling),
- telescope: telescope like command for WinDbg,
- sm: pretty-printing of Spidermonkey
js::Value
andJSObject
objects, - codecov: extract code-coverage out of a TTD trace,
- policybuffer: disassemble a Chrome policy buffer program,
- gdt: dump the Global Descriptor Table.
If you would like to have telescope
and sm
loaded every time your debugger starts instead of loading the extensions manually follow the below steps:
-
Clone this GitHub repository,
-
Edit the
Manifest\config.xml
file and update theLocalCacheRootFolder
path with a value that makes sense, -
Open the debugger and import the gallery by running
.settings load c:\path\where\cloned\windbg-scripts\Manifest\config.xml
and.settings save
. -
Restart the debugger and you should be able to run
!telescope
as well as inspecting the gallery content from the data-model.0:000> dx -r1 Debugger.State.ExtensionGallery.ExtensionRepositories Debugger.State.ExtensionGallery.ExtensionRepositories [0x0] : overgallery [0x1] : LocalInstalled 0:000> dx -r1 Debugger.State.ExtensionGallery.ExtensionRepositories[0] Debugger.State.ExtensionGallery.ExtensionRepositories[0] : overgallery Name : overgallery ManifestVersion : 0x1 URL Enabled : true Packages 0:000> dx -r1 Debugger.State.ExtensionGallery.ExtensionRepositories[0].Packages Debugger.State.ExtensionGallery.ExtensionRepositories[0].Packages [0x0] : Telescope 0:000> dx -r1 Debugger.State.ExtensionGallery.ExtensionRepositories[0].Packages[0] Debugger.State.ExtensionGallery.ExtensionRepositories[0].Packages[0] : Telescope Name : Telescope Version : 1.0.0.1 Description : Telescope data dereference Size : 0 IsDownloaded : true Components