2008-12-18 3 views
3

this question Теперь у меня есть код, который можно подключить к процессу с использованием API-интерфейса Mdbg.Не удается отсоединиться от процесса с помощью mdbg

Проблема в том, что я не могу отсоединиться от процесса, если потребуется. Когда я звоню mgProcess.Detach(). WaitOne(); (где mgProcess является MDbgProcess созданный из объекта MDbgEngine) Я получаю следующее сообщение об ошибке:

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?

ответ

1

Попробуйте это:

proc.AsyncStop(); 
proc.Detach(); 

или

Proc.CorProcess.Stop(0); 
Proc.Detach();