调试进程内部件

本主题介绍进程内部件提供的大多数对象的调试过程。但是 ActiveX 文档不能用这里介绍的方法调试。请参阅“建立 ActiveX 文档”。

要调试进程内部件,请按照以下步骤执行:

  1. 在类模块或 UserControl 代码中根据需要设置断点和监视表达式。

  2. CTRL+F5 键或单击“运行”菜单上的“启动全编译”来运行工程组。

    进程内部件将被编译,但 Sub Main 不会运行,直到响应客户端请求而创建第一个对象。

    调试时,可以从测试工程直接单步进入部件工程的代码。

  3. 如果调试任务结束,可以单击测试工程主窗口上的“关闭”按钮返回设计模式。

    重点 单击“结束”按钮关闭测试工程会关闭所有的工程。部件中的对象不接收 Terminate 事件。以该方式关闭测试工程无法正确测试部件关闭时的行为。

启动全编译

通常总是按下 CTRL+F5 键或在运行菜单上单击启动全编译来启动过程外部件工程,所以,在部件开始向测试应用程序提供对象之前就解决了所有编译错误。

Visual Basic 中缺省请求时编译代码。这意味着部件中可能有代码直到客户机调用它时还未编译。有些编译错误,不返回设计模式就无法修改,这意味着要关闭部件。这时,测试程序保持无效对象引用。

注意 为使请求编译无效,请在工具菜单中选定选项,选定选项对话框的通用选项卡,并清除请求时编译。这将影响当前会话以及 Visual Basic 今后的实例。

关闭进程内部件

当进程内部件运行在开发环境中时,即使测试工程释放了所有的对象引用,同时所有其它关闭部件的条件都满足,它也不会被卸载。测试 DLL 卸载行为的唯一办法就是使用已编译的部件。

详细信息 “在部件的错误点上使用中断”介绍如何对部件工程使用“错误捕获”选项。ActiveX 控件工程必须在客户应用程序处于设计模式或运行模式时调试。请参阅“建立 ActiveX 控件”中的“调试控件”。没有浏览器或其它活动文档容器就无法调试 ActiveX 文档。请参阅“建立 ActiveX 文档”。有关测试和调试主题的列表请参阅“测试和调试 ActiveX 部件”。