C# 是否使用源代码将进程附加到调试器?

C# 是否使用源代码将进程附加到调试器?,c#,visual-studio,debugging,visual-studio-debugging,C#,Visual Studio,Debugging,Visual Studio Debugging,在调试模式下运行C#console应用程序时,是否可以使用with Process.start()启动另一个C#console应用程序(相同程序或不同程序),然后使用C#源代码将其自动附加到调试器 我使用的是Visual Studio 2017+,.NET 4.7.2,C#7.3 此问题并非重复,因为建议的问题/答案均未完全回答此特定问题。我正在寻找一种完全自动化的方法,使用源代码将任何流程对象附加到当前调试器。其他问题中没有一个答案专门针对这一点。例如,他们建议使用过时的加载项、生成新的调试器

在调试模式下运行C#console应用程序时,是否可以使用with Process.start()启动另一个C#console应用程序(相同程序或不同程序),然后使用C#源代码将其自动附加到调试器

我使用的是Visual Studio 2017+,.NET 4.7.2,C#7.3

此问题并非重复,因为建议的问题/答案均未完全回答此特定问题。我正在寻找一种完全自动化的方法,使用源代码将任何流程对象附加到当前调试器。其他问题中没有一个答案专门针对这一点。例如,他们建议使用过时的加载项、生成新的调试器实例或手动附加进程,而不是使用C#源代码完成任务

例如:

var this_exe = Environment.GetCommandLineArgs()[0];
var p = Process.Start(this_exe, "/compute");
// How to attach 'p' to the debugger?

在以进程启动的exe主方法中,添加Debugger.Launch(),如

private static void Main(string[] args)
{
    Debugger.Launch();
    //your code
}