用Windbg 调试Win32程序的时候我们经常会输入命令dt -b this来查看类的成员变量值。 Windbg 默认会用寄存器ECX里面的值作为this 指针地址,然后打印出类里面的所有成员变量。 其实这样是有时候是错误的。虽然this指针多数时候都会被存在寄存器ECX, 有些C++编译器在做代码优化之后会把 this指针放在其他寄存器里面,比如ESI。
用Windbg 调试Win32程序的时候我们经常会输入命令 dt -b this 来查看类的成员变量值。 Windbg 默认会用寄存器ECX 里面的值作为this 指针地址,然后打印出类里面的所有成员变量。 其实这样是有时候是错误的。虽然this指针多数时候都会被存在寄存器ECX, 有些C++编译器在做代码优化之后会把 this指针放在其他寄存器里面,比...