指引网

当前位置: 主页 > 编程开发 > ASP >

从网页上下载控件时制作CAB包的方法

来源:网络 作者:佚名 点击: 时间:2017-06-22 20:38
[摘要] Internet 软件分发单位是“软件包”,它由包含 .inf 文件或软件分发 (.osd) 文件(或两者都包括)的 CAB 文件 (.cab) 所组成。一个分发单位也可以包含软件组件,如 ActiveX 控件 (.ocx)、.dll 文
Internet 软件分发单位是“软件包”,它由包含 .inf 文件或软件分发 (.osd) 文件(或两者都包括)的 CAB 文件 (.cab) 所组成。一个分发单位也可以包含软件组件,如 ActiveX 控件 (.ocx)、.dll 文件、.exe 文件、Java 类文件或小程序。当 Web 页上 OBJECT 元素的 CODEBASE 特性引用包含.inf 文件的 CAB 文件时,Internet Explorer 3.0 和更新的版本将自动把 CAB 文件作为软件分发单位。
第一步:创建一个inf文件:
INF文件是一个文本文件,指定运行控件所需要下载或者呈交的文件(比如DLL或者其它OCX)。
一个INF文件就捆绑了CAB压缩文件所有的必须文件。
 缺省情况下,
与现有硬盘中文件版本号相同的文件不被下载。
要了解有关INF文件及其选项(包括如何创建独立于平台的INF文件)的详细情况,
请参考平台软件开发工具包(Platform SDK,)的设置和系统管理服务(Setup and System Management Services)
部分的Setup APIOverviewINF Files目录下的内容。
下面就以我自己写的一个videoweb.dll为例子。在videoweb.dll中使用到:tdiio.dll,encoder.dll,decoder.dll,tdiio.ini,user.ini,
camer.ini,drivo.ini.
video.inf的例子:
;inf file for videoweb.dll
[version]
signature=$CHICAGO$
[DestinationDirs]
DLLSysCopy=11
IniWinCopy=25
[DefaultInstall]
CopyFiles=DllSysCopy,IniWinCopy
AddReg=videoReg
[DllSysCopy]
tdiio.dll
Decoder.dll
VideoWeb.dll
[IniWinCopy]
camer.ini
user.ini
xvidMP4.ini
[videoReg]
HKCR,CLSID{4BDA0AA3-2164-44B7-8A88-208A145F51DC},"",%REG_SZ%,"Video Class"
HKCR,CLSID{4BDA0AA3-2164-44B7-8A88-208A145F51DC}Control
HKCR,CLSID{4BDA0AA3-2164-44B7-8A88-208A145F51DC}Implemented Categories
HKCR,CLSID{4BDA0AA3-2164-44B7-8A88-208A145F51DC}Implemented Categories{7DD95801-9882-11CF-9FA9-00AA006C42C4}
HKCR,CLSID{4BDA0AA3-2164-44B7-8A88-208A145F51DC}Implemented Categories{7DD95802-9882-11CF-9FA9-00AA006C42C4}
HKCR,CLSID{4BDA0AA3-2164-44B7-8A88-208A145F51DC}InprocServer32,"", %REG_SZ%,"%11%VideoWeb.dll"
HKCR,CLSID{4BDA0AA3-2164-44B7-8A88-208A145F51DC}InprocServer32,"ThreadingModel",%REG-SZ%,"Apartment"
------分隔线----------------------------