1、打开OD配置文件ollydbg.ini会发现:兄搏Restorewindows=123346//。
2、这个Restorewindows可能会是一个很大的值,现在只需要物颤将Restorewindows=0,重新用OD调试程序即可断点。
以下命令适用于 OllyDbg 的快捷命令栏插件(显示于程序的状态栏上方)CALC
判断表达式
WATCH
添加监视表达式
AT / FOLLOW
Disassemble at address
在地址进行反汇编
ORIG
Disassemble at EIP
反汇编于 EIP
DUMP
Dump at address
在地址转存
DA
Dump as disassembly
转存为反汇编代码
DB
Dump in hex byte format
转存在十六进制字节格式
DC
Dump in ASCII format
转存在 ASCII 格式
DD
Dump in stack format
转存在堆栈格式
DU
Dump in UNICODE format
转存在 UNICODE 格式
DW
Dump in hex word format
转存在十六进举圆制字词格式
STK
Go to address in stack
前往堆栈中的地址
AS + 地址 + 字符串
Assemble at address
在地址进行汇编
L + 地址 + 字符串
Label at address
在地址进行标号
C + 地址 + 字符串
Comment at address
在地址进行注释
BP
Break with condition
使用条件中断
BPX
Break on all calls
中断在全部调用
BPD
Delete break on all calls
清除位于全部调用的断点
BC
Delete breakpoint
清除断点
MR
Memory breakpt on access
内存断点于访问时
MW
Memory breakpt on write
内存断点于写入时
MD
Remove memory breakpoint
清除内存断点
HR
HW break on access
硬件中断在访问
HW
HW break on write
硬件中断在写入
HE
HW break on execution
硬件中断在执行
HD
Remove HW breakpoint
清除硬件断点
STOP
停止运行程序调试
PAUSE
暂停程序调试
RUN
Run program
运行程序进行调试
Run till address
运行到地址
GE
Run and pass exception
运行和通过例外
SI
Step into
步入
SO
Step over
步过
TI
Trace in till address
跟踪进入直到地址
TO
Trace over till address
跟踪步过直到大缺地址
TC
Trace in till condition
跟踪进入直到条件
TOC
Trace over till condition
跟踪步过直到条件
TR
Till return
直到返回
TU
Till user code
直到用户代码
LOG
View Log window
查看记录窗口
MOD
View Modules window
查看模块窗口
MEM
View Memory window
查正仿塌看内存窗口
CPU
View CPU window
查看 CPU 窗口
CS
View Call Stack
查看 Call 堆栈
BRK
View Breakpoints window
查看断点窗口
OPT
Open Options
打开选项
EXIT / QUIT
Quit OllyDbg
退出 OllyDbg
OPEN
Open executable file
打开可执行文件
CLOSE
Close executable
关闭程序
RST
Restart current program
恢复当前程序
HELP
Help on API function
API 函数的帮助
DASM
Disassemble immediate opcode
反汇编直接的机器码
FR
Find reference to selected command/address
查找参考到选定的命令/地址
AC
Analyse code
分析代码
SN
Search for Name(label) in current module
在当前模块中搜索名称(标号)
SOB
Scan object files
扫描项目文件
OllyDbg 常用快捷热键
打开一个新的可执行程序 (F3)
重新运行当前调试的程序 (Ctrl+F2)
当前调试的程序 (Alt+F2)
运行选定的程序进行调试 (F9)
暂时停止被调试程序的执行 (F12)
单步进入被调试程序的 Call 中 (F7)
步过被调试程序的 Call (F8)
跟入被调试程序的 Call 中 (Ctrl+F11)
跟踪时跳过被调试程序的 Call (Ctrl+F12)
执行直到返回 (Ctrl+F9)
显示记录窗口 (Alt+L)
显示模块窗口 (Alt+E)
显示内存窗口 (Alt+M)
显示 CPU 窗口 (Alt+C)
显示补丁窗口 (Ctrl+P)
显示呼叫堆栈 (Alt+K)
显示断点窗口 (Alt+B)
打开调试选项窗口 (Alt+O)
很正常。因为只要你一开机,WS2_32.dll模块的加载位置就是固猛盯定的。很多枝闭和系统模块都是在开机后,加载的位置就已经固定了。如user32。dll,kernel32。dll这些,无论你打开多少个程序,加载地址都是固定的。
所以,在kernel模块,user模块,和WS2_32模块,加态洞载位置都固定,那么里面的函数,如send函数,其函数地址也是一样的。无论你打开多少个程序都是这样。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)