Symbols, types, and expressions¶
- .fetchimage¶
Download a loaded module’s PE file into the symbol cache and print its path.
.fetchimage <module>
The file is looked up by the TimeDateStamp and SizeOfImage in the module’s mapped PE header, the symbol-server key, so it is the exact build that is running. A disassembler database made from it rebases onto the live module.
- .formats¶
Display an expression in common numeric formats.
.formats <expression>
- .reload¶
Reload symbols for one module or every module in the current scope.
.reload [module]
- .srcpath¶
Display or replace ordered local source path mappings.
.srcpath [<local-root|recorded-prefix=local-root> ...]
- .srcpath+¶
Append local source path mappings.
.srcpath+ <local-root|recorded-prefix=local-root> ...
- .symfix¶
Restore the ntoseye cache and Microsoft symbol server defaults.
.symfix
- .sympath¶
Display or replace the ordered symbol source path.
.sympath [<directory|http-server> ...]
- .sympath+¶
Append entries to the ordered symbol source path.
.sympath+ <directory|http-server> ...
- ?¶
Evaluate an expression.
? <expression>
Also:
evmemory reads: by() 1 wo() 2 dwo() 4 qwo()/poi() 8; &expr is storage, ->/. are values
- dt¶
Display a type layout or decoded structure.
dt [-r[N]] [-a[N]] [-v] [-y] [-l <field>] [module!]<type> [address] [field-pattern...]
-r expands nested structures, -a expands bounded arrays, -v shows field sizes, -y uses case-insensitive prefix matching, and -l
walks a LIST_ENTRY field. Nested field paths are dotted, and field patterns support * and ?. With -l, the address given is the first element, like WinDbg, so the walk emits every node up to the return to that address. A list head and a record link are indistinguishable in memory, so starting at a list head (rather than poi(ListHead)) prints the head as one pseudo-record instead of dropping a real record; an empty list, whose link points at itself, prints nothing. The walk keeps whatever it collected and reports null links, cycles, unreadable links, and reaching the entry bound.
- dv¶
Display procedure locals and parameters at an address.
dv [address]
- ln¶
List the nearest symbol to an address.
ln <address>
- ls¶
List source lines of the current scope’s file.
ls [.] [first][,count]
With no arguments, continues after the lines the previous ls or lsa listed;
.restarts at the current line.firstis a line number;countdefaults to 10. The file is the one the current scope IP ($scopeip) maps to, found through .srcpath.
- lsa¶
List source lines around an address.
lsa [address][,first][,count]
Defaults to the current scope IP (
$scopeip), five lines before it, and twelve lines in all.firstis an offset from the address’s line (negative for lines before it). The line at the address is marked>.
- n¶
Display or set the default numeric radix for REPL expressions.
n [8|10|16]
- set¶
Define a convenience variable usable in expressions as $
. set $<name> <expression>
- unset¶
Remove a convenience variable.
unset $<name>
- vars¶
List defined convenience variables and result slots.
vars
- x¶
Fuzzy-search symbols by name.
x <query> or x <module>!<query>
*and?are globs. Operators:^prefix,$suffix,'exact,!negation, and space-separated terms are ANDed.