PowerDbg Version 6
With this release we're really focusing on making PowerDbg (and by extension WinDbg) as easy to use as possible, whilst at the same time enabling a much richer debugging experience that really leverages the power of PowerShell.
There is no release yet, but you can grab the working copy direct from source control under .\dev\out\Modules
- Wherever possible we now returned structured (PSObject) data from commands, that can be filtered, pilelined etc... The CSV file is depricated
- Trying to make cmdlets (or aliases) to match the WinDbg experience as closely as possible
- We're bunding some sample debugging scenarios, that can be built and used for training purposes. These actually form the basis of our integration tests
- PowerDbgConsole - provides a really easy way to get a PowerDbg session up and running
We've also now got a 'build' process that makes it easier for us to develop new commands, but that's more a housekeeping thing.
It's the intent
that all existing scripts should still run as-is. This will need testing however...
Is currently a bit inconsistent, and I'm still searching for a pattern I'm happy with. We either violate PowerShell conventions, and still with WinDbg names, or most CmdLets end up being called 'Get-something
' and I don't see that particularly aids discoverability. But that warning about non-standard verbs (when you load the module) is very irritating.
(get-command -module WinDbg)
| CmdLet || Alias || SOS command |
| Dump-ClrThreads || clrthreads || !clrthreads |
| Dump-Heap || dumpheap || !dumpheap |
| Dump-Object || dumpobject,do || !dumpobject |
| Dump-Array || dumparray || !dumparray |
| Dump-Dictionary || || (no equivilent) |