该主题介绍了如何建立测试工程来检验进程外部件提供的大部分对象。但是 ActiveX 文档不能象这样测试。请参阅“建立 ActiveX 文档”。
要为进程外部件创建测试工程,请按照以下步骤执行:
重点 创建该可执行文件是帮助测试工程保持对部件工程的引用。调试不需要可执行文件。
使用客户测试程序测试部件时,使用“ActiveX 部件”设置。如果部件可作为独立桌面应用程序,则可以使用“独立方式”设置来测试该操作模式,如“调试进程外部件”中描述的那样。
重点 部件工程必须处于运行模式!在开发环境中运行部件时,Visual Basic 会把它的 Windows 注册项从可执行文件(在第一步创建)切换到工程,在返回设计模式时再切换回来。除非是在运行模式,否则无法向部件工程中添加引用;对可执行文件的引用不允许在开发环境中调试部件。
重点 要启动部件工程,一般按 CTRL+F5 键,或者单击“运行”菜单中的“全编译执行”,这样,所有的编译错误在部件开始向客户应用程序提供对象之前就已经解决了。请求编译部件代码(缺省),可能导致必须关闭部件,从而使测试程序保持无效的对象引用。(为使请求编译无效,请在“工具”菜单中选定“选项”,选定“选项”对话框的“通用”选项卡,并清除“请求时编译”。这将影响当前会话以及 Visual Basic 今后的实例。)
注意 如“如何测试 ActiveX 部件”所述,如果部件实现了异步回调,必须使用 ActiveX Exe 工程作为测试工程
如果部件未在“引用”对话框中显示,那么可以切换回部件工程并确保它正在运行。如果按 CTRL+F5 键时部件工程不在运行模式,可以单击“工程”菜单中的“<Project> 属性”,打开“工程属性”对话框。选中“部件”选项卡,确保“启动模式”框中的“ActiveX 部件”被选中。
如果部件正在运行,但未显示在测试工程的“引用”对话框中,可以先停止该部件的运行,然后检查并确保它的类模块的 Instancing 属性至少有一个被设成了非 Private 和 PublicNotCreatable 属性值。
关于在客户应用程序中引用其它应用程序对象的详细信息请参阅《程序员指南》中的“用部件编程”。
重点 如果在部件工程中修改了代码,那么除非每次都在步骤 1 重新编译生成可执行文件,否则就只能在部件工程处于运行模式时修改测试工程。
部件工程不在运行模式时,测试工程无法对其类型库进行访问,只能使用步骤 1 生成的可执行文件中的类型库。
步骤 1 中创建的可执行文件可以防止测试工程丢失对部件工程的引用,但不提供对创建可执行文件后添加的特性的访问。
可以使用测试工程中的对象浏览器来检验部件的公共类、方法以及属性是否可用。在测试工程中,对象浏览器将只显示公共成员。
详细信息 “如何调试进程外部件”介绍了调试技术。在没有浏览器或者活动文档容器时,无法调试 ActiveX 文档。请参阅“建立 ActiveX 文档”。“工程兼容性:避免引用丢失”介绍了工程兼容性选项,还解释如何恢复丢失的引用。