老早就想使用ACTIVEX,但是一直由于不知道怎么签名,所以一直用不起来。偶然见看到了两篇文章,抱着尝试的态度试用了以下,竟然签名成功,开心一下!

以下是两篇文章:

ActiveX控件打包成Cab置于网页中自动下载安装
http://www.javaeye.com/topic/110834

Delphi 发布ActiveX控件 数字签名 CAB  Cer
http://www.yryz.net/blog/article/Delphi/88.htm

第一篇文章配有图片,比较好理解,但是尝试了以下签名不了,虽然根据上面一步一步的做下来,提示签名成功了,但是系统还是认为没有签名。估计是签名的程序是比较老的,现在的操作系统不认了。

第二篇文章虽然只有文字,但是有了第一篇的整体认识,再研究下去就很方便了。但是其中有几个地方有错误,经过修改,最后终于配置成功。

下面是我的步骤:

1.下载签名工具,这个很重要,两篇文章都有下载连接,并且都能用,但是第一篇下载的东西不能用,第二篇的是好用的。

2.解压签名工具:

Activex 签名

3.启动COM窗口,设置路径

set path=%path%;D:\Nouse\ActiveXTest\u2009930222615\SignTool

Activex 签名

4.到OCX文件所在的路径

cd: D:\Nouse\ActiveXTest\u2009930222615\hlca2

Activex 签名

5.创建HlCaProj.inf

[version]   
signature="$CHINA$"  
AdvancedINF=1.0  
[Add.Code]   
HlCaProj.ocx=HlCaProj.ocx

[HlCaProj.ocx]   
file=thiscab   
clsid={1523D770-1A41-4A7A-9D2E-C17108F1045E}   
FileVersion=1,0,0,0 
RegisterServer=yes   

6.创建CAB

cabarc.exe -s 6144 N HlCaProj.cab  HlCaProj.ocx  HlCaProj.inf

Activex 签名

7.根据第二篇的步骤生成证书

Activex 签名

Activex 签名

命令如下:

makecert -sv CustForm.pvk -r -n "CN=A公司" CustForm.cer

cert2spc CustForm.cer  CustForm.spc

makecert -sv test.pvk -r -n "CN=A公司" test.cer

cert2spc test.cer test.spc

makectl test.cer test.ctl

signcode -v CustForm.pvk -spc CustForm.spc test.ctl

certmgr -add -ctl test.ctl -s trust

certmgr -add -c CustForm.cer -s root

这样就生成

Activex 签名

8.签名

运行signcode.exe

Activex 签名

Activex 签名

Activex 签名

Activex 签名

 

Activex 签名

 

Activex 签名

 Activex 签名

Activex 签名

 

Activex 签名

Activex 签名

OK,搞定。注意这里选择文件的时候都选择test相关的文件。

 

9.验证

chktrust HlCaProj.cab

Activex 签名

说明签名成功。

相关文章:

  • 2021-08-03
  • 2021-08-17
  • 2021-07-22
  • 2022-01-30
  • 2022-12-23
  • 2021-10-19
猜你喜欢
  • 2021-08-01
  • 2021-05-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2022-12-23
相关资源
相似解决方案