-
-
[求助]有个Debug API的问题请教
-
发表于:
2010-11-17 17:17
4905
-
为什么下面的DBEvent.u.Exception.ExceptionRecord.ExceptionAddress中的值
一直是NTdll中的地址(0X7C9*开头),而不会是程序中领空的地址(0X004*开头)?也就
是那个提示框一直没运行到.
此程序已经设置为单步调试,这问题弄了我好多天了,望各位不吝赐教,在线等...
case EXCEPTION_SINGLE_STEP:
{
context.ContextFlags = CONTEXT_FULL | CONTEXT_DEBUG_REGISTERS;
GetThreadContext(pi.hThread,&context);
if (DBEvent.u.Exception.ExceptionRecord.ExceptionAddress ==(void *) 0x0434c38)
{
MessageBox (0, "OK", "test", MB_OK);
}
context.EFlags |= 0x100;
SetThreadContext(pi.hThread,&context);
ContinueDebugEvent(DBEvent.dwProcessId,DBEvent.dwThreadId,DBG_CONTINUE);
continue;
}
[注意]APP应用上架合规检测服务,协助应用顺利上架!