nai*_*der 6 windows debugging visual-studio
我正在调试用户转储文件,并且在堆栈跟踪的顶部有这个类成员函数
msvcr80.dll!__ invalid_parameter_noinfo()+ 0xc bytes - 1st FRAME
msvcr80.dll!__ invalid_parameter_noinfo()+ 0xc bytes - 2nd FRAME
myDLL!myClass :: myClassMemFunc(int val = 90) - 3rd FRAME
现在,当我跳转到第3帧时 - "this"指针值无效(从ECX寄存器中检索"this"值 - 但ECX寄存器值在上述堆栈跟踪的前两个函数中发生了变化 - ) - 所以我无法看到我的类对象的实际成员变量 -
但我知道我的类对象的地址 - 这是0x0012ECE0
当我试图用 - (myClass*)(0x0012ECE0)观察内存地址时
我得到一个CXX0019:错误:输入错误
even(myClass)(0x0012ECE0)生成相同的错误.
我在这做错什么吗? - 什么是检索类对象值的正确方法?
只是一个盲目的猜测:尝试(myDLL!myClass*)(0x0012ECE0)
另一个问题,你怎么能确定它是你对象的地址?
作为旁注,试试windbg - 在内存/堆栈周围查找对象会更简单.