一个进程有多个线程。怎么在其中的一个线程里面得到其它线程的context信息
...
CONTEXTcontext;
HANDLE hThread = null;
hThread = OpenThread(THREAD_GET_CONTEXT|THREAD_QUERY_INFORMATION|THREAD_SUSPEND_RESUME,FALSE,th32.th32ThreadID);
if(hThread)
{
SuspendThread(hThread);
context.ContextFlags = CONTEXT_CONTROL;
GetThreadContext(hThread,&context);
...
里面得到的EIP都是一个固定的地址而不是那个线程的真是EIP,不知道为什么
[解决办法]
...址而不是那个线程的真是EIP...
what do you mean?
[解决办法]
你不会是想得到eip吧,应该是ebp
[解决办法]
You cannot get a valid context for a running thread. Use the SuspendThread function to suspend the thread before calling GetThreadContext.
[解决办法]
try to remove
context.ContextFlags = CONTEXT_CONTROL;