【发布时间】:2016-08-26 22:55:52
【问题描述】:
我正在尝试将调试器 (Ollydbg v1) 附加到由 CreateProcess 在另一个正在调试的进程中创建的子进程,我收到以下错误:“进程已处于调试模式”。
我的问题是为什么我不能将调试器附加到此进程以及为什么子进程处于调试模式虽然我还没有附加调试器以及我可以做些什么来在常规模式下创建进程。
谢谢,劳伦。
编辑:
我也尝试附加其他调试器,它们都产生了相同的消息
-
此外,我尝试创建子进程的内存转储,
procdump实用程序失败,因为“ReadProcessMemory 和/或 WriteProcessMemory 失败”,因此生成了一个 0 字节的转储文件。
【问题讨论】:
-
调试器的功能集通常不同。有些调试器只能调试单个进程,有些可以自动附加到子进程。我不太了解 Ollydbg,它有什么限制,但您可能想尝试 Visual Studio 或 WinDbg。您还可以将系统配置为自动将调试器附加到特定进程(有关说明,请参阅How to: Launch the Debugger Automatically)。
-
@IInspectable,谢谢,我编辑了我的问题,你能看一下吗?
-
可能是哪个调试器已经附加到父进程,比您尝试在子进程上使用哪个调试器更重要。根据父进程的创建方式,子进程可能会自动附加到与父进程相同的调试器。我不确定为什么
procdump不起作用;也许进程被暂停了? -
您正在将 OllyDbg 附加到子进程。但是哪个调试器附加到父级?还有 OllyDbg 还是别的什么?
标签: c windows debugging reverse-engineering ollydbg