笔记:Microsoft.net和windows应用程序调试(第二部分:强大的调试技术)

 

第七章: Visual Studio.NET 本机代码高级调试技术
(p235)高级断电语法由两部分组成,上下文和位置或函数名。{[函数],[源文件],[二进制模块]}<位置或函数名>
 
(p236)设置导出函数的断点:
 
(p238)伪寄存器以@或者$开头,如@EAX,@BL,@ERR,@TIB
 
(p239)为函数在特定线程中调用设置条件断点:*(long*)($TIB+0x24) == <线程ID>
 
(p240)为线程设置名称。
 
(p240)数据断点。
 
(244)Watch 窗口变量的格式符号。

符号
格式说明
示例
显示结果
d,i
有符号的十进制整数
(int)0xF000F065,d
-268373915
u
无符号的十进制整数
0x0065,u
101
o
无符号的八进制整数
0xF065,o
0170145
x,X
十六进制整数
61541,X
0x000F065
l,h
d,I,u,o,x,X的Longh或者short前缀
0x00406042,hx
0x6042
f
有符号浮点
3./2.,f
1.500000
e
有符号的科学计算符
3./2,e
1.500000e+000
g
有符号的浮点或者有符号的科学计数符(科学计数符方式比较短)
3./2,g
1.5
c
单个字符
0x0065,c
‘e’
s
ANIS字符串
szHiWorld,s
“Hello world”
su
Unicode字符串
szWHiWorld,su
“Hello world”
hr
HRESULT或者Win32错误代码
0x00000000,hr
S_OK
wm
Windows消息号
0x0010,wm
WM_CLOSE

 
(244)Watch 窗口内dump文件的格式符号。

符号
格式说明
示例
显示结果
ma
64个ASCII字符
0x0012ffac,ma
0x0012ffac ...F.ݘ0.......o|......@T.......|o|
m
十六进制格式的16个字节,后跟16个ASCII字符
0x0012ffac,m
0x0012ffac bb 82 ef 9f e0 ff 12 00 90 9e 46 00 dd 98 30 ef ...F.ݘ0.
mb
(同上)
(同上)
(同上)
mw
8个字(16位一个字)
0x0012ffac,mw
0x0012ffac 82bb 9fef ffe0 0012 9e90 0046 98dd ef30
md
4个双字
0x0012ffac,md
0x0012ffac 9fef82bb 0012ffe0 00469e90 ef3098dd
mq
2个四字
0x0012ffac,mq
0x0012ffac
0012ffe09fef82bb ef3098dd00469e90
mu
2字节字符(Unicode)
0x0012ffac,mu
0x0012ffac 82bb 9fef ffe0 0012 9e90 0046 98dd ef30 ???.?F??
,数字
将一个内存地址指针扩展为指定数目的值
pCharArray,10
使用+/-放大符扩展的10字符数组

 
(p238)伪寄存器以@或者$开头,如@EAX,@BL,@ERR,@TIB
 
(p239)为函数在特定线程中调用设置条件断点:*(long*)($TIB+0x24) == <线程ID>
 
(p240)为线程设置名称。
 
(p240)数据断点。
 
(244)Watch 窗口变量的格式符号。
 
(244)Watch 窗口内dump文件的格式符号。、
 
(246)利用Watch窗口记录代码执行时间:$CLK
 
(246)两个未归档的为寄存器:
a、$HALDELS,显示当前进程中打开的句柄数目。
b、$VFRAME,(virtual frame pointer)指向前一个条目的EBP值
 
(246)自动展开自己的类型、添加自定义HRESULT值、EEAddIn:AUTOEXP.dat。
 
(254)远程调试,参考p216安装远程调试组件。
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值