近来手上有个项目,需要使用ocx控件
(ocx是什么?
http://baike.baidu.com/view/393671.htm)
在生产过程中我遇到了如下问题.
1. 如何让 ocx 自动安装?
a) 如何签名?
b) 如何打包?
c) 如何安装到指定目录?
2. 如何让 ocx 自动升级?
下面是我解决这些问题的方法.(该项目已发布,所有代码都可正常运行.)
一、ocx 签名
购买及使用:
http://verisign.itrus.com.cn/html/fuwuyuzhichi/changyongwendang/411.html
非购买的我没有发一现个可用的 -_-
注:OCX与 CAB包都要签名
二、 打包成CAB包
这里我尝试了二个方法
a) Cabarc (该方法在我把系统升级为 win7 64后出错,原因没能找到.)
运行 > CMD
cd C:\CAB
cabarc n ocx.cab -s 6144 -m LZX:21 ocx.ocx 1.dll 2.dll 1.lang ocx.inf
n ocx.cab 新生成 ocx.cab 包
-s 6144 Reserve space in cabinet for signing (e.g. -s 6144 reserves 6K bytes)
-m LZX:21压缩模式 最高压缩 Set compression type [LZX:<15..21>|MSZIP|NONE], (default is MSZIP)
ocx.ocx 1.dll 2.dll 1.lang ocx.inf 是当前目录下 你要找进CBA包的 文件
b) MakeCAB (上个方法被废了后改用该方法,感觉比上个方法好用)
运行 > CMD
cd C:\CAB
MakeCAB /F list.txt /d compressiontype=lzx /d compressionmemory=21 /d cabinetnametemplate= ocx.cab
/F list.txt 将要打包的文件目录内容如下
ocx.ocx
1.dll
2.dll
1.lang
ocx.inf
/d compressiontype=lzx /d compressionmemory=21压缩模式 最高压缩
/d cabinetnametemplate= ocx.cab 打包后的文件名 我在当前目录 disk1 下打到了该文件
三、 安装(ocx.inf)
ocx.inf 决定了,你文件的版本 安装目录等许多重要信息
关于inf文件细节 大家可以看下
[url] http://wenku.baidu.com/view/c136df4633687e21af45a97f.html[/url]
下面给出一个简单的实例
[version]
signature="$CHICAGO$"
AdvancedINF=1,0,0,4
[DefaultInstall]
CopyFiles=install.files
RegisterOCXs=RegisterFiles
[RInstallApplicationFiles]
DelFiles=install.files
CopyFiles=install.files
RegisterOCXs=RegisterFiles
[DestinationDirs]
install.files=30,Program Files\XOCX
[SourceDisksNames]
1=%DiskName%,ocx.cab,1
[install.files]
ocx.ocx 1.dll 2.dll 1.lang
[ocx.ocx]
file-win32-x86=thiscab
RegisterServer=yes
clsid={917179C9-F725-4484-BADD-6D19A3DE5D82}
FileVersion=1,0,0,3
DestDir=30,Program Files\XOCX
[1.dll]
RegisterServer=yes
DestDir=30,Program Files\XOCX
[2.dll]
RegisterServer=yes
DestDir=30,Program Files\XOCX
[1.lang]
RegisterServer=yes
DestDir=30,Program Files\XOCX
[RegisterFiles]
%30%\Program Files\XOCX\ocx.ocx
四、 自动安装与自动升级
<object name="ocx" id="ocx" classid="clsid:917179C9-F725-4484-BADD-6D19A3DE5D82" style="width:100%; height: 100%; " codebase="ocx.cab#version=1,0,0,3"></object>
codebase 指明要从那里下载 该ocx.
#version=1,0,0,3 当前页面使用ocx的版本,如果与 ocx.inf中 [ocx.ocx] FileVersion=1,0,0,3一致. 不一致会要求用户重复安装.
当ocx升级后应该
修改基本版本
修改 ocx.inf中 [ocx.ocx] FileVersion=1,0,0,3 中的值
修改 <object> 中的值
这样当用户再次该页面时会自动安装最新版本的ocx控件
分享到:
相关推荐
"OCX控件的CAB包打包和数字签名" OCX控件是ActiveX控件的一种,通常用于Web开发中。但是,直接在网页上使用OCX控件可能会存在安全问题。为了解决这个问题,可以将OCX控件打包到CAB包中,并对其进行数字签名。下面将...
标题“把OCX压制成CAB的工具,实现网页自动下载”所涉及的知识点主要包括: 1. **CAB文件的制作**:CAB文件能够将多个文件打包成一个单一的下载单元,有助于减少网络传输的时间和带宽消耗。制作CAB文件通常需要用到...
通过以上步骤,我们可以利用Advanced Installer v19.1.0中文版将OCX控件打包成exe文件,实现一键安装和自动注册,极大地提高了部署和维护的效率。对于开发者来说,这是一个非常实用的工具,能够简化OCX组件的分发和...
7. **创建启动脚本**:如果你的OCX需要在启动时运行或与特定的应用程序结合,可以创建一个启动脚本来实现。这可以通过在“启动”节点下添加一个快捷方式或自定义脚本来完成。 8. **配置安装界面**:Setup Factory...
【VC开发OCX并打成CAB包】的教程主要涉及了使用Visual C++(VC)创建MFC ActiveX控件以及将控件打包成CAB( Cabinet)文件的过程,以便于网页上直接调用和下载。以下是详细的步骤和知识点: 一、创建MFC ActiveX...
在IT行业中,尤其是在Web开发领域,与用户交互并提供便捷的功能是至关重要的。"ocx打印pdf演示测试版.rar"这个压缩包文件提供了一个解决方案,它允许在HTML页面中使用OCX(ActiveX控件)来打印PDF文档。OCX是微软在...
标题 "ocx 打cab包发布" 涉及到的是在Windows系统中打包和发布OCX(ActiveX Control)组件的技术。OCX是微软在COM(Component Object Model)架构下开发的一种控件,用于在应用程序中提供可重用的用户界面元素。将...
C#自动实现DLL(OCX)控件注册 C#自动实现DLL(OCX)控件注册是指通过C#程序自动注册DLL(OCX)控件,使得控件可以在项目中正确使用。本文将介绍两种实现自动注册的方法,并对每种方法进行详细的解释。 方法一:调用...
本篇文章将深入探讨`SignTool`,一个用于数字签名Windows应用程序和组件的工具,以及如何使用它来将OCX(ActiveX控件)打包成CAB( Cabinet)文件,从而简化安装过程。 `SignTool`是微软提供的一个命令行工具,它...
为了简化用户安装过程,我们可以将OCX和DLL文件打包成 CAB( Cabinet )文件。CAB文件是一种压缩格式,用于存储多个文件,并且通常与Windows软件分发相关联。将ActiveX控件打包到CAB文件中,用户只需点击一次,IE...
51个VB6 OCX控件 打包 控件列表: AniGIFV6.ocx asAssistantPopup.ocx asBubbleForm.ocx asctrls.ocx chklsb26.ocx ComboBox.ocx COMCT232.OCX comctl32.ocx COMDLG32.OCX CurtButton.ocx daxctle.ocx DBGRID32.OCX ...
5. **部署与安装**:生成的CAB文件可以通过网页链接提供给用户下载,用户在Internet Explorer中点击链接后,浏览器会自动尝试安装CAB文件中的ActiveX控件。 值得注意的是,由于ActiveX技术的安全性和兼容性问题,...
在使用MSCOMM.OCX控件开发的项目中,自动注册MSCOMM.OCX控件,只需要讲MSCOMM.OCX控件跟,exe运行文件放在同一个目录下,实现自动检测安装MSCOMM.OCX控件。
网站ActiveX控件OCX是Windows操作系统中一种用于增强网页交互功能的组件,它允许开发者在Internet Explorer浏览器中实现更复杂的功能,如多媒体播放、文件操作等。OCX控件通常由开发人员编写,然后发布给用户安装,...
总之,OCX打包成CAB并进行数字签名,不仅简化了OCX的分发过程,还提高了其安全性,确保用户能够安全地下载和使用OCX组件。这一过程涉及INF文件的创建、CAB文件的生成、数字签名的应用以及证书的申请,每个环节都至关...
然而,为了在Web页面上使用OCX控件,需要将其打包成CAB( Cabinets)文件,以便于用户下载和安装。本文将详细介绍如何在Win10下进行这个过程。 首先,理解CAB文件:CAB文件是一种由Microsoft设计的压缩格式,用于...
vb打包程序,只打包OCX控件 不是网络上的打包程序,那个要不需要注册,要不就是有病毒。
为了实现异步打印,我们需要使用JavaScript与OCX控件进行通信。这可以通过`ActiveXObject`对象来实现,它是JavaScript在IE中与COM对象交互的桥梁。创建一个`ActiveXObject`实例,传入OCX控件的ProgID,然后调用其...
1. **Microsoft Office mscomct2 控件包.exe** - 这可能是一个安装程序,用于在用户的计算机上安装或修复`mscomct2.ocx` 控件,确保其正常工作。 2. **MSCOMCT2.OCX** - 这就是我们要找的核心文件,包含了ActiveX...