从这个问题开始,我现在有了可以使用 Mdbg API 附加到进程的代码。
问题是,如果需要,我无法脱离流程。当我调用 mgProcess.Detach().WaitOne(); (其中 mgProcess 是从 MDbgEngine 对象创建的 MDbgProcess )我收到以下错误消息:
Process not synchronized. (Exception from HRESULT: 0x80131302)
at Microsoft.Samples.Debugging.CorDebug.NativeApi.ICorDebugController.Detach()
at Microsoft.Samples.Debugging.CorDebug.CorController.Detach() in C:\mdbg\src\debugger\corapi\Controller.cs:line 89
at Microsoft.Samples.Debugging.MdbgEngine.MDbgProcess.Detach() in C:\mdbg\src\debugger\mdbgeng\Process.cs:line 716
如果我只是尝试调用mgProcess.Detach()或mgProcess.CorProcess.Detach()我会得到相同的结果。
有谁知道分离 Mdbg 进程的正确方法?