Re: windbg中运行.if_.else遇到一个奇怪问题

Windows内核调试

windbg中运行.if_.else遇到一个奇怪问题


merry 2012-08-16, 10:17 上午
运行如下script, 发现一个问题:

0:000>.while (@eax=0xf) { .if (@edx>0x20000) {.echo  ####;r @edx;r @eip} .else {.echo !!!!;r @edx ;r @eip};p}
!!!!
edx=00000000
eip=7c801a29
!!!!
edx=00000000
eip=7c801a2
!!!!
edx=00d2a113  <=== 这时@edx已经大于0x20000, 却仍然走.else分支, 为什么?
eip=7c801a31
####
edx=00d2a113
eip=7c801a33

请问这是什么原因引起, 该如何修改script以避免该问题?
谢谢!

Re: windbg中运行.if_.else遇到一个奇怪问题


lee0ne 2012-08-31, 12:51 下午

关注~~~~~~~~~~~~~~~~~~~~

Re: windbg中运行.if_.else遇到一个奇怪问题


悬崖遛马 2012-09-13, 12:52 下午
遇到过类似问题,关注下

分别用两个断点用于记录两个函数调用次数,并且第一个断点没100次会把两个计数打印出来

然后我惊奇的发现结果和我预计不一致

Powered by Community Server Powered by CnForums.Net