windbg 常用命令
// 列出所有模块对应的符号信息
x sede_guardx!*
x sede_guardx!drawWatermark*
x sede_guardx!createMemDC
// 查看当前堆栈
k
//下断点
bu sede_guardx!drawWatermark 或者 bm sede_guardx!drawWatermark
或者 bu sede_guardx!WatermarkWindow::createMemDC
bu sede_guardx!WatermarkWindow::createMemDC+0x25d
bl // 列出所有断点
bc * // 清除所有断点
bc 1 // 清除1号断点
bc 1 2 5 // 清除1号、2号、5号断点
be * // 启用所有断点
be 1 // 启用1号断点
be 1 2 5 // 启用1号、2号、5号断点
bd * // 禁用所有断点
bd 1 // 禁用1号断点
bd 1 2 5 // 禁用1号、2号、5号断点
bp 7c801b00 // 在7c801b00地址处放置一个断点
bp MyDll+0x1032 // 在模块MyDll.dll偏移0x1032处放置一个断点
bp ConsoleTest.cpp:36
// 在ConsoleTest.cpp的36行处放置一个断点
bp main // 在main函数的起始处放置一个断点
bp @$exentry // 在进程的入口放置一个断点
bp CSecondLoader::CSecondLoader // 在CSecondLoader的构造函数处放置一个断点
bp TestCommon! CTest::add // 在TestCommon.dll的Test.cpp文件的CTest::add()函数起始处放置一个断点
bp ConsoleTest.cpp:40
".if (poi(pVar)>5) {}; {g}" // ".if (Condition) {Optional Commands}; {g}" 条件断点 pVar指针指向的值>5,执行空语句(;),断住 否则继续执行
bp ConsoleTest.cpp:40
"j (poi(pVar)>5) ' '; 'g'" // "j (Condition) 'Optional Commands'; 'g'" j为条件表示式:条件断点 pVar指针指向的值>5,执行空语句(;),断住 否则继续执行
注:Condition表达式语法默认的是MASM表达式语法。使用复杂C++表达式时我们需要用@@c++()将表达式包围住;如:"j @@c++(*pVar>5) ' '; 'g'"
//查看断点
bl
//单步调试
p
p // 单步执行(F10) 【Step】
p 2 // 2为步进数目
pc // 执行到下一个函数调用处停下 【Step to Next Call】
pa 7c801b0b // 执行到7c801b0b地址处停下 【Step to Adress】
t // Step into(F11) 【Trace】
tc // 执行到下一个进入点(Call指令)处停下 【Trace to Next Call】
//函数参数变量请用dv命令
dv
若要查看在记事本进程中加载的代码模块列表,请输入以下命令:
lm
0:000> lm
start end module name
00007ff66e760000 00007ff6
6e798000 notepad (pdb symbols) C:\ProgramData\Dbg\sym\notepad.pdb\BC04D9A431EDE299D4625AD6201C8A4A1\notepad.pdb
00007ff8066a0000 00007ff8
067ab000 gdi32full (deferred)
00007ff8067b0000 00007ff8
068b0000 ucrtbase (deferred)
00007ff806a10000 00007ff8
06aad000 msvcp_win (deferred)
00007ff806ab0000 00007ff8
06ad2000 win32u (deferred)
00007ff806b40000 00007ff8
06e08000 KERNELBASE (deferred)
00007ff807220000 00007ff8
072dd000 KERNEL32 (deferred)
00007ff807420000 00007ff8
07775000 combase (deferred)
00007ff807820000 00007ff8
079c0000 USER32 (deferred)
00007ff8079c0000 00007ff8
079f0000 IMM32 (deferred)
00007ff807c00000 00007ff8
07c2a000 GDI32 (deferred)
00007ff808480000 00007ff8
085ab000 RPCRT4 (deferred)
00007ff8085b0000 00007ff8
0864e000 msvcrt (deferred)
00007ff808c40000 00007ff8
08cee000 shcore (deferred)
00007ff808db0000 00007ff8
08fa5000 ntdll (pdb symbols) C:\ProgramData\Dbg\sym\ntdll.pdb\53F12BFE149A2F50205C8D5D66290B481\ntdll.pdb
00007ffff8580000 00007fff
f881a000 COMCTL32 (deferred)
版权归原作者 小米渣的逆袭 所有, 如有侵权,请联系我们删除。