调试自定义调试引擎

项目类型从 DebugLaunch 方法启动调试引擎(DE)。 这意味着 DE 在控制项目类型的 Visual Studio 实例的控制下启动。 但是,Visual Studio 的该实例无法调试 DE。 以下是允许你调试自定义 DE 的步骤。

注意

:在“调试自定义调试引擎”过程中,必须先等待 DE 启动,然后才能附加到它。 如果在 DE 启动时显示的 DE 的开头附近放置消息框,则可以在该点附加,然后清除消息框以继续。 这样,就可以捕获所有 DE 事件。

警告

在尝试以下过程之前,必须安装远程调试。 有关详细信息,请参阅 远程调试

调试自定义调试引擎

  1. 启动 msvsmon.exe,远程调试监视器。

  2. 从 msvsmon.exe 中的“工具”菜单中,选择“选项”以打开“选项”对话框。

  3. 选择“无身份验证”选项,然后单击“ 确定”。

  4. 启动 Visual Studio 的实例并打开自定义 DE 项目。

  5. 启动 Visual Studio 的第二个实例并打开启动 DE 的自定义项目(用于开发,这通常在安装 VSIP 时设置的实验性注册表配置单元中)。

  6. 在此 Visual Studio 的第二个实例中,从自定义项目加载源文件并启动要调试的程序。 等待片刻,让 DE 加载,或等待断点命中。

  7. 在 Visual Studio 的第一个实例(使用 DE 项目),从“调试”菜单中选择“附加到进程”。

  8. “附加到进程”对话框中,将传输更改为远程(仅本机且无身份验证)。

  9. 限定符 更改为计算机的名称(注意:条目有历史记录,因此只需键入此名称一次)。

  10. “可用进程”列表中,选择正在运行的 DE 实例,然后单击“附加按钮。

  11. 在 DE 中加载符号后,在 DE 代码中放置断点。

  12. 每次停止并重启调试过程时,重复步骤 6 到 10。

调试自定义项目类型

  1. 在普通注册表配置单元中启动 Visual Studio 并加载项目类型项目(即项目类型的源,而不是项目类型的实例化)。

  2. 打开“项目”属性并转到 “调试 ”页。 对于命令,键入 Visual Studio IDE 的路径(默认情况下,这是 [drive]\Program Files\Microsoft Visual Studio 8\Common7\IDE\devenv.exe)。

  3. 对于命令参数,请键入/rootsuffix exp实验性注册表配置单元(在安装 VSIP 时创建)。

  4. 单击“确定” 接受这些更改。

  5. F5 启动项目类型。 这会启动 Visual Studio 的第二个实例。

  6. 此时,可以在项目类型源代码中放置断点。

  7. 在 Visual Studio 的第二个实例中,加载或创建项目类型的新实例。 在加载或创建期间,可能会命中断点。

  8. 调试项目类型。

  9. 如果选择调试启动 DE 的过程,可以在启动 DE 后执行“调试自定义调试引擎”过程中的步骤,以附加到 DE。 这为你提供了三个正在运行的 Visual Studio 实例:一个用于项目类型源,另一个用于实例化项目类型,另一个实例化项目类型附加到 DE。