我使用SuspendThread
在另一个进程中挂起了一个线程,然后使用GetThreadContext获取其上下文。 GetThreadContext成功。
然后我用ReadProcessMemory
读取其堆栈的部分内容。
我做了一些事情(当线程暂停时)然后我再次读取相同的内存
我假设当线程被挂起时,它的内存应保持不变,但我在内存读数中会得到不同的结果。
可能导致此问题的原因以及如何使内存保持不变?
答案 0 :(得分:2)
可能导致这种情况的原因是什么?很多事情可能引起这种情况,但可能(p = .999999)的原因是你的错误代码通过写入来污染线程的内存。
如何让内存保持不变?这里只有一个答案:修复代码中的错误。