如何进行 Internet 部件下载

Internet 部件下载时,首先要把下载的部件打包成单个 .cab 文件,以便浏览器进行智能下载。打包和展开向导的打包过程生成一个 HTML 页面,该页面通过 OBJECT 标记与该压缩包文件相联。当用户打开该 Web 页面时,浏览器读取 OBJECT 标记并检索到下载所需的文件。

作为.cab 文件创建过程的一部分,打包和展开向导将创建一个包含有关下载信息的 .inf 文件。如果您需要包括附加的信息,可以自定义该文件。

注意 如果更新该 .inf 文件,必须重新生成.cab 文件。

详细信息 有关用该.cab 文件创建的全部文件列表,请参阅“为打包和展开向导进行文件打包”。

OBJECT 标记

以下 HTML 代码片段表示了一个称为 MyContrl.cab 文件的 OBJECT标记:

<OBJECT
   CLASSID="clsid:25BDF09D-EC8B-11CF-BD97-00AA00575603"
   CODEBASE="/Controls/MyContrl.cab#version=1,0,0,0"
   ID=MyContrl>
</OBJECT>

上面显示的 OBJECT 标记有三个属性:

下载过程

将一个.cab 文件的内容下载到客户计算机时,系统执行以下操作:

  1. 浏览器在 OBJECT 标记中检查类标识符的注册。如果没有找到,则处理 CODEBASE 属性。如果浏览器找到类标识符,则检查注册条目中引用的文件,看看是否是正在使用的文件,如果不是,则继续下载。

  2. 浏览器下载并解开适当的 .cab 文件。

  3. 浏览器处理与 .cab 文件相关联的 .inf 文件。

  4. Internet Explorer 进行注册设置,包括与部件的状态,例如设置脚本安全性或设置初始化安全性相关的设置。

  5. 浏览器检查是否已经安装了必需的文件或部件。如果已经安装,再看文件或部件是否是最新的。如果是,浏览器则不对它们做任何改动。否则,浏览器将用下载并解开的新版本来替换。

  6. 浏览器安装并注册您的部件。

部件下载步骤

以下列表显示了要创建一个完整签名的、安全的 Internet 部件以供 ActiveX 控件下载所应该执行的步骤:

注意 如果创建对其他类型的 ActiveX 部件的下载部件,则不需要执行有关安全设置的步骤。

  1. 设计软件,指定软件的安全级别。

  2. 创建软件并测试。如果使用 IObjectSafety 接口,则需要在对象上实现相应的安全设置。

  3. 创建文档,表明对象是安全的。

  4. 进行独立复审。

  5. 用打包和展开向导重新创建.cab 文件,如果不使用 IObjectSafety 接口,则设置相应的安全标志。

  6. 按照要求修改.inf 文件,以添加自述信息或其他文件。

  7. 如果在第 6 步中修改了 .inf 文件,则使用 Makecab.exe 重新创建 .cab 文件。

  8. 数字签名 .cab 文件。

  9. 在 .cab 文件所有可能运行的平台上测试最终的.cab文件。

部件下载所需资源

创建和测试用于 Internet 部件下载的包时,可能要用到以下资源。大部分资源是 Visual Basic 的一部分。

资源 目的 来源
pdaddin.dll 或
pdcmdln.exe
用打包和展开向导打包下载部件,可以来源于 Visual Basic 内部(pdaddin.dll)或作为单独可执行文件(pdcmdln.exe)。 Visual Basic 安装程序
lpk_tool.exe 创建任何控件的许可 Visual Basic 的 “工具”目录
makecab.exe 生成 .cab 文件。 Visual Basic 安装程序
signcode.exe 管理数字签名 ActiveX SDK
Authenticode certificate 识别开发者 Verisign 公司、GTE 或提供签名的其他机构
Internet Explorer 测试下载和安装 www.microsoft.com
regsvr32.exe 注册和取消软件注册,以便测试 Visual Basic 的“工具”目录