OCX打包CAB并签名的过程
前言
ocx需要依赖dll及ini配置文件,我希望可以自动注册ocx,并将ocx、dll及ini配置文件放入系统文件夹中。所以可以将ocx、dll及ini打包到cab中,当js第一次调用cab时,可以自动安装cab,将ocx,dll及ini注册在系统中。
一、打包CAB
1、编写inf文件,可以直接修改使用
; =========================ENP_ActiveXDLL.inf ========================
; This .inf file will control the installation of the testOcx
[version]
; version signature (same for both NT and Win95) do not remove
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
;需要添加的dll及ini
ENP_ActiveXDLL.ocx=ENP_ActiveXDLL.ocx
DB_CSICPay.dll=DB_CSICPay.dll
DB_CSICPay.ini=DB_CSICPay.ini
XZ_F10_API.dll=XZ_F10_API.dll
[ENP_ActiveXDLL.ocx]
;"thiscab" 是一个关键字,意指包含该INF的CAB文件。
;"file-win32-x86" 指定平台是 x86。
file-win32-x86=thiscab
;"RegisterServer"指改文件是否需要注册,一般情况下只有一个ocx需要注册,但有时也需要注册dll,需要注册时必填,不需要注册时可不写
RegisterServer=yes
;"clsid" 指的是要安装控件的CLSID。dll是没有classid的,所以dll不用写classid
clsid={22B1C397-92C2-4130-98A2-456FF31B9398}
;"FileVersion"是此文件的版本号,物理文件上右键→属性→详细信息可看到。注意:有的dll详细信息的版本号是空,这时候可以不填写此关键字。
FileVersion=1,0,0,1
;"DestDir"指的是装载目录或者文件的地址: 11 指定为系统目录 WINDOWS/ /SYSTEM32或 WINDOWS/ /SYSWOW64;
DestDir=11
[DB_CSICPay.dll]
file-win32-x86=thiscab
DestDir=11
[DB_CSICPay.ini]
file-win32-x86=thiscab
DestDir=11
[XZ_F10_API.dll]
file-win32-x86=thiscab
FileVersion=1,0,0,9
DestDir=11
[RegisterFiles]
;把需要注册的所有控件或动态链接库的路径写在下面。%11%跟上面的DestDir=11是一样的
%11%/ENP_ActiveXDLL.ocx
; ====================== end of ENP_ActiveXDLL.inf =====================
2、iexpress.exe打包工具
这个工具windows系统已经自带了,运行框输入 iexpress 即可打开
二 、制作签名证书
1、集合签名工具
2、在命令行输入一下命令:
输入三次相同密码,执行结束后得到.pvk及.cer文件
3、运行Cert2Spc.exe,执行得到ENP_ActiveXDLL.spc
4、经过以上,获得签名证书
三、对打包后的CAB进行签名:signtool.exe
1、命令行输入
2、使用数字签名向导对CAB签名
1)选择需要签名的CAB文件
2)选择自定义
3)从文件中选择,X.509证书,选择.cer文件
4)选择私钥文件,输入最开始签名证书中的私钥密码
5)选择哈希算法
6)选择证书.spc
7)写描述+时间戳(可不加)http://timestamp.verisign.com/scripts/timstamp.dll
8)完成
四、JS调用CAB
修改 JS调用OCX的代码:CODEBASE部门修改如下,其余相同,即可安装cab,并注册.ocx,dll,ini在32位系统盘的C:/WINDOWS/SYSTEM32或64位的C:/WINDOWS/SYSWOW64中。
OCX打包CAB并签名的过程相关推荐
- DsoFramer.ocx制作CAB包详细图解过程
本文DOC文档 相关资源下载地址: http://download.csdn.net/source/2812514 首先我们将signcode.rar压缩到 C:/signcode 一."数 ...
- dsoframer打包cab加签名
第一步:制作"数字证书" 解压signcode.rar到C盘根目录下,运行CMD进入dos输入CD C:/signcode makecert的命令如下: makecert -sv ...
- MFC ActiveX 打包 CAB
MFC ActiveX打包CAB 准备打包签名工具和要打包的文件 将需要签名和打包的 OCX .dll和命令放到相同文件夹. 制作签名证书 在命令行运行下面命令: makecert.exe -ss r ...
- 控件注册 - 利用资源文件将dll、ocx打包进exe文件(转)
很多时候自定义或者引用控件都需要注册才能使用,但是如何使要注册的dll或ocx打包到exe中,使用户下载以后看到的只是一个exe,点击直接运行呢?就像很多安全控件,如支付宝的aliedit.exe那样 ...
- VB控件注册 - 利用资源文件将dll、ocx打包进exe文件
很多时候自定义或者引用控件都需要注册才能使用,但是如何使要注册的dll或ocx打包到exe中,使用户下载以后看到 现在介绍一下使用资源文件,将dll.ocx打包进exe,点击直接注册的例子: ...
- android7.0及以上版本签名校验过程详解
对于新的签名方案APK Signature Scheme v2,在这篇文章中已经有详细的介绍http://www.tuicool.com/articles/bURRVrj.从这篇文章中可以知道,新的签 ...
- Android反编译解包、重新打包、重新签名基础步骤自理文档
反编译解包.重新打包.重新签名基础步骤自理文档 一.[反编译apk获取文件目录] 1.apktool是google的工具,需要下载https://code.google.com/p/android ...
- 怎么把OCX打包成cab文件
From: http://blog.csdn.net/ghlfllz/article/details/5931402 生成TesterOCX.inf,输入如下内容: [version] signatu ...
- 记一次ios重打包签名的过程
1 创建一个工作目录,比如桌面上的resign目录,其绝对路径是/Users/apple/desktop/resign/,并切换到当前目录下 2 解压缩需要重签名的cma.ipa到payload目录 ...
最新文章
- BZOJ 2440: [中山市选2011]完全平方数 [容斥原理 莫比乌斯函数]
- .Net Core中利用TPL(任务并行库)构建Pipeline处理Dataflow
- 云原生系列「二」Kubernetes网络详解
- MyBatis-学习笔记06【06.使用Mybatis完成DAO层的开发】
- 一张PDF了解JDK9 GC调优秘籍-附PDF下载
- 百度地图JavaScript API覆盖物旋转时出现偏移
- vue --- 修饰符.lazy、.number、.trim
- Codeforces Round #497 (Div. 1)
- The security settings could not be applied to the database because the connection has failed安装Mysql
- Prometheus+Grafana监控PostgreSQL
- 一款不错的SpringCloud 脚手架项目
- 解析身份证_你需要知道的与身份证相关的7个函数,让你的工作效率快速提升!...
- [ 逻辑锻炼] 用 JavaScript 做一个小游戏 ——2048 (详解版)
- 您如何合并两个Git存储库?
- python动态属性_Python进阶之@property动态属性的实现
- uniapp对接阿里云OSS前端直传
- Java:获取两个区间内 为周几或星期符合 的所有日期,指定日期 使用周数计算出相对应的工作日
- 为什么单线程的Redis如此的快(Why is single-threaded Redis so fast)
- Leetcode 1564 把箱子放进仓库里1
- 研报复现初探—华泰金工人工智能选股系列之boosting模型
热门文章
- 网络类型(P2P、MA、BMA、NBMA)
- CNCF 新掌舵人首次亮相中国,KubeCon 2020 云原生峰会网上行
- 恒压板框过滤实验数据处理_鞍山高温除尘袋公司,板框压滤机滤布,热门_泰翔工业滤料...
- 1、ABP 文档介绍
- BDTC 2017数据库上午:犹他大学、东方国信、蚂蚁金服、微软、人大金仓
- Java反编译器JD
- 重写equals方法一定要重写hashcode方法吗
- AFD在CentOS环境中部署
- 渐进式web应用程序_为什么渐进式Web应用程序很棒,以及如何构建一个
- Android 模块 -- 基于XMPP协议的手机多方多端即时通讯方案