OCX制作CAB及数字签名
来源:网络收集 点击: 时间:2024-08-09首先制作INF文件(RemtCard.dll是我的OCX,我采用ATL+ATL CONTROL工程,非MFC ACTIVEX工程)

制作CAB文件- CMD 输入 iexpress,将启动Iexpress向导

选中Create new Self Extraction Directive file, 单击下一步(N),会出现:

选择Create compressed files only(ActiveX Installs),单击下一步(N),单击Add,添加INF文件中所列所有文件(DLL及DEF等)

单击下一步(N),单击Browse按钮选择RemtCard.CAB文件,同时选中 “Store files using long Name inside Package”checkbx

选择Dont save单选按钮并单击下一步(N)按钮

出现完成画面,单击完成按钮将同时生成RemtCard.CAB文件。

自制数字证书-
用CMD进入到控件所在的目录;
创建PVK文件(私人密匙文件),CMD输入“makecert -sk RemtCard RemtCard.pvk -n CN=XXXXXXX”,然后回车(需要注意切换到makecert.exe目录执行)特别注意:最好按22步命令输入

创建CER文件(公司证书),CMD输入“makecert -sk RemtCard.pvk RemtCard.cer”,然后回车,在相对目录下会出现一个安全证书

生成文件如下:

创建SPC测试软件出版商证明书,CMD输入“cert2spc RemtCard.cer RemtCard.spc”,然后回车

在CMD中运行signcode,

选择RemtCard.CAB

选择好RemtCard.CAB文件后单击下一步(N)按钮,在选择想要的签名类型里选择自定义(C)按钮并单击下一步(N)按钮

单击从文件选择(F)按钮,选择刚制作的RemtCard.cer

单击下一步(N)按钮,并选择CSP中的私钥(K)。

单击下一步(N)按钮,在散列算法中选择shal,并单击下一步(N)按钮

证书路径中的证书中选择证书路径中的所有证书,包括根证书(C),在其它证书(可选)”中选择“包括在以下PKCS #7 证书(.p7b)文件中的证书(P):”,并单击浏览(R)…按钮选择RemtCard.spc文件,选择完后,单击下一步(N)按钮

数据描述窗口中输入公司的名称及网址并单击下一步(N)按钮

跳过时间戳进入到完成界面

可能点击完成,会出现以下错误

解决办法
创建PVK命令时输入:makecert -$ individual -r -sk RemtCard RemtCard.pvk -n CN=XXXXXXX

选择md5

如果问题还得不到解决,请确认用户管理权限,生成每个文件都需要同样高级管理员生成。
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_1094916.html