public ITargetHostProcess LaunchAdapter(IAdapterLaunchInfo launchInfo, ITargetHostInterop targetInterop) { if (launchInfo.LaunchType == LaunchType.Attach) { var debugAttachInfo = (DebugAttachInfo)_debugInfo; return(DebugAdapterRemoteProcess.Attach(debugAttachInfo)); } var debugLaunchInfo = (DebugLaunchInfo)_debugInfo; var debugPyAdapterDirectory = Path.GetDirectoryName(PythonToolsInstallPath.GetFile("debugpy\\adapter\\__init__.py")); var targetProcess = new DebugAdapterProcess(_adapterHostContext, targetInterop, debugPyAdapterDirectory); return(targetProcess.StartProcess(debugLaunchInfo.InterpreterPathAndArguments.FirstOrDefault(), debugLaunchInfo.LaunchWebPageUrl)); }
public static ITargetHostProcess Attach(DebugAttachInfo debugAttachInfo) { var attachedProcess = new DebugAdapterRemoteProcess(); return(attachedProcess.ConnectSocket(debugAttachInfo.RemoteUri) ? attachedProcess : null); }