答案是:
MSCHART控件需要的文件并不多,除了它本身就是ComCat.dll。如果你分发的是
VS包括的MSCHART.Cab就不会少文件,但是你可能没有生成.LPK文件。MSCHART控件
是一个需要License的控件,如果安装了VS,则设计License会安装到注册表中,这
样你就可以在VB、VC的集成环境和IE中使用MSCHART了。如果你使用VB、VC生成EXE,
运行License会写入EXE文件,这样分发的时候只要把EXE和OCX拷贝给用户就可以了。
但是对于IE页面,由于没有EXE这样的文件,所以需要生成LPK文件,放在服务器上,
用户浏览时,IE会下载OCX和LPK,如果LPK中的运行License时正确的,则用户可以浏
览带有MSCHART的页面。生成LPK的工具和方法可以参考微 软 的 Knowledge Base的 文
章:“Q159923 OWTO: Use Licensed ActiveX Controls in Internet Explorer”。
类似的,VS中许多控件,如MS Common Controls等都需要这样做。
LPK文件是干什么的
所属类别:
Visual Basic-ActiveX技术
编号:QA002810
建立日期: 2000年4月3日 最后修改日期:2000年4月3日
zytao:
我 有 一 个 问 题 请 教 你 , 我 现 在 用 VB自 己 编 写 了 一 个 控 件 ,
现 想 把 它 用 到 网 页 上 去 , 因 为 网 页 要 在 局 域 网 中 应 用 , 所
以 我 想 把 这 个 控 件 安 装 在 服 务 器 上 , 客 户 端 访 问 网 页 时 ,
若 没 有 该 控 件 则 要 能 自 动 下 载 , 现 在 我 用 Package &
Deployment 向
导 做 了 一 个 包 其 中 在 它 的 HTML文 件 中 它 这 样 写 :
<HTML>
<HEAD>
<TITLE>MyTest.CAB
</HEAD>
<BODY>
<!-- 如 果 这 页 上 的 任 何 控 件 需 要 授 权 , 您 必 须
创 建 一 个 授 权 包 文 件 。 运 行 LPK_TOOL.EXE 来 创 建
要 求 的 LPK 文 件 。 LPK_TOOL.EXE 将 从 ActiveX SDK 中 找 到 ,
http://www.microsoft.com/intdev/sdk/sdk.htm. 如 果 您 有 Visual
Basic 6.0 CD, 您 可 以 在 /Tools/LPK_TOOL 目 录 下 下 面 是 对 象 标
记 的 例 子 :
<OBJECT CLASSID="clsid:5220cb21-c88d-11cf-b347-00aa00a28331">
<
</OBJECT>
-->
<OBJECT ID="MyTest"
CLASSID="CLSID:06B9C10E-E781-11D2-9545-0080C82BF2DD"
CODEBASE="MyTest.CAB#version=1,0,0,0" width="320" height="240">
<param name="_ExtentX" value="8467">
<param name="_ExtentY" value="6350">
</OBJECT>
</BODY>
</HTML>
我 不 知 道 中 间 有 一 段 注 释 是 什 么 意 思 , LPK文 件 我 做 了 但
不 知 道 应 该 放 在 哪 里 , 中 间 的 PARA NAME 及 VALUE 该 怎 么 填 写 ,
我 是 参 照 了 你 的 QA001788 “如何在Web站点上安装ActiveX控件”来 做 的 ,
但 好 象 不 行 , 请 指 照 !
回答:
只 有 你 按 照 QA002506 “如何检查编译后控件的合法性”所 说 的 选 择 了
许 可 支 持 , 你 才 需 要 LPK文 件 , 否 则 你 根 本 就 不 用 使 用 LPK文 件 。 QA001788 “如何在Web站点上安装ActiveX控件”介 绍 的 方 法 对 于 ActiveX控 件 没 有 问 题 , 关 键 是 设 置 好 CODEBASE。
PARA NAME 及 VALUE的 设 置 同 VB的 frm文 件 差 不 多 , 你 可 以 借 助
FrontPage, 它 可 以 正 常 地 生 成 有 关 代 码 。