能力值:
( LV4,RANK:50 )
|
-
-
2 楼
使用as定义别名。
0:001> aS /x myAlias 5 + 1; .block{.echo myAlias}
0x6
具体的看help吧。
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
as 只可以正向,不可以反向 简单说
as MyProc 0x4000;
可以 u MyProc 可以识别成 0X4000
但是 u 0x4000 就不会识别成MyProc
as 相当于是个宏 不满足要求啊
|
能力值:
( LV4,RANK:50 )
|
-
-
4 楼
别名本就如此。
你要新添加符号,这是不大可能的,因为所有的符号信息要么在PE中,要么在符号文件中,调试器不会修改这2个文件的。
单纯的反向功能是ln,从地址反向到符号的。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
就算原本 WINDBG没有这个功能,作为一个程序员实现这个功能也不是问题把,如果不考虑效率的话我有数种方法实现这个功能,我不想花太多时间在算法上
IDA 和 OLLYDBG都有这个功能
|
能力值:
( LV4,RANK:50 )
|
-
-
6 楼
从我的使用感觉来说,别名差不多了。就像编程语言中的变量名一样,有了名字,一般都不会直接使用地址了。
windbg本身可以在地址和符号之间相互转换,如下:
0:000> ln main
d:\project\mine\vs.net\testc\testc\testc.c(51)
(004133c0) testC!main | (00413410) testC!TestInt
Exact matches:
testC!main (int, char **)
0:000> u 4133c9
testC!main+0x9 [d:\project\mine\vs.net\testc\testc\testc.c @ 51]:
004133c9 53 push ebx
我没写过扩展,如果windbg的扩展能够修改符号表,在符号表中添加自己的项的话,就可以实现你所需要的。比如说定义一个Symbol,testC!main2 4133c9,这样 u 4133c9的话,就直接显示为testC!main2了。:)
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
答非所问,竟然说自定义符号没用,那是不是符号文件也没用了
已经解决了
|
|
|