public static bool GetDebuggerInfo(ProcessInfo processInfo, out DubrovnikDebuggerModes debuggerMode, out int port) { debuggerMode = DubrovnikDebuggerModes.Listen; port = 0; if (processInfo == null) { return(false); } try { port = (int)processInfo.Id; } catch { return(false); } try { string name = processInfo.Name; if (name.StartsWith(LISTEN_PROCESS_PREFIX, StringComparison.InvariantCulture)) { debuggerMode = DubrovnikDebuggerModes.Listen; } else if (name.StartsWith(ATTACH_PROCESS_PREFIX, StringComparison.InvariantCulture)) { debuggerMode = DubrovnikDebuggerModes.Attach; } } catch { return(false); } return(true); }
private static ProcessInfo GetFakeProcess(DubrovnikDebuggerModes debuggerMode, int port) { string procName = (debuggerMode == DubrovnikDebuggerModes.Listen ? DubrovnikDebuggerUtils.LISTEN_PROCESS_PREFIX : DubrovnikDebuggerUtils.ATTACH_PROCESS_PREFIX) + port; ProcessInfo processInfo = new ProcessInfo(port, procName); return(processInfo); }