在这个问题之后,我现在有了可以使用Mdbg附加到进程的代码。
问题是,如果需要的话,我不能脱离这个过程。当我调用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进程的正确方法吗?
发布于 2008-12-18 16:15:58
据了解,Mdbg将不允许您做任何当调试器运行时操作。
MgProcess.CorProcess.Stop(0);
MgProcess.Detach();似乎是前进的方向。
发布于 2009-11-14 08:51:50
试试这个:
proc.AsyncStop();
proc.Detach();或
Proc.CorProcess.Stop(0);
Proc.Detach();https://stackoverflow.com/questions/378217
复制相似问题