/// <inheritdoc /> protected override void OnDebugProject(DebuggerSession session) { var info = new ProcessStartInfo() { FileName = Path.Combine(OutputDirectory, Name + ".exe"), }; session.Start(info); }
protected abstract void OnDebugProject(DebuggerSession session);
/// <summary> /// Starts debugging the solution by using the startup projects defined in the additional solution settings /// </summary> /// <param name="session">The debugging session to host the debugging process.</param> public void Debug(DebuggerSession session) { EnsureStartupProjectSet(); foreach (var projectGuid in Settings.StartupProjects) { var node = GetSolutionNode(x => x.ObjectGuid == projectGuid); if (node == null) throw new ArgumentException(string.Format("Invalid solution settings. Guid {0} is not present in solution.", projectGuid)); if (node is ProjectEntry) { (node as ProjectEntry).Project.Debug(session); } } }
/// <summary> /// Starts debugging the project. /// </summary> /// <param name="session">The debugger session to host the debugging process.</param> public void Debug(DebuggerSession session) { var eventArgs = new CancelEventArgs(); if (DebugStarted != null) DebugStarted(this, eventArgs); if (!eventArgs.Cancel) { OnDebugProject(session); } }
public void DispatchDebugStopped(EventArgs e) { if (DebugStopped != null) DebugStopped(this, e); CurrentDebuggerSession.Dispose(); CurrentDebuggerSession = null; }