【发布时间】:2017-09-13 19:45:09
【问题描述】:
我们正在创建一个 Visual Studio 调试器扩展,它需要通过设置运行时(不是 CLR 或 Win32)的自定义启动器启动正在调试的应用程序,并在新进程中启动目标应用程序。换句话说,自定义启动器负责创建新进程。在 VS 调试器中,通常通过调用 VsShellUtilities.LaunchDebugger() 并提供一个 dlo 字段设置为 DEBUG_LAUNCH_OPERATION.DLO_CreateProcess 的 VsDebugTargetInfo 对象以及要启动和调试的 exe 文件的坐标来启动调试器。这不符合我们的发布模式。
还有一个 dlo 值 DEBUG_LAUNCH_OPERATION.DLO_Custom 似乎是为了这个目的(使用 clsIdCustom 字段来指示启动器),但当前的文档说它已经过时,并将我们引导回 DEBUG_LAUNCH_OPERATION.DLO_CreateProcess,但不仅没有这不适合我们的模型,但在这种情况下使用 clsidCustom 来指示调试引擎(如果它只是一个)。
那么,我们推荐的启动 VS 调试器并使用我们的自定义启动器来配置和启动我们的运行时(以及其中的应用程序)的方法是什么?
【问题讨论】:
标签: visual-studio-debugging visual-studio-extensions