|
|
@ -527,8 +527,16 @@ namespace Debugger |
|
|
|
System.Threading.Thread.Sleep(0); |
|
|
|
System.Threading.Thread.Sleep(0); |
|
|
|
|
|
|
|
|
|
|
|
// Stop&terminate - both must be called
|
|
|
|
// Stop&terminate - both must be called
|
|
|
|
corProcess.Stop(uint.MaxValue); |
|
|
|
try { |
|
|
|
corProcess.Terminate(0); |
|
|
|
corProcess.Stop(uint.MaxValue); |
|
|
|
|
|
|
|
corProcess.Terminate(0); |
|
|
|
|
|
|
|
} catch (COMException ex) { |
|
|
|
|
|
|
|
if (ex.ErrorCode == unchecked((int)0x80131301)) { |
|
|
|
|
|
|
|
// COMException (0x80131301): Process was terminated.
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
throw; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
this.TerminateCommandIssued = true; |
|
|
|
this.TerminateCommandIssued = true; |
|
|
|
|
|
|
|
|
|
|
|
// Do not mark the process as exited
|
|
|
|
// Do not mark the process as exited
|
|
|
|