OCX做带数字签名的CAB文件
来源:互联网 发布:淘宝新店铺 购买 编辑:程序博客网 时间:2024/06/07 20:09
做inf文件
建一个default.INF文件,写库的依赖,要做的事情。例子如下:
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
ActiveX.ocx=ActiveX.ocx
a.dll=a.dll
b.dll=b.dll
[ActiveX.ocx]
file-win32-x86=thiscab
clsid={BF31EF92-1CFF-428A-AC60-28E065AF5E12}
FileVersion=1,0,0,1
RegisterServer=yes
DestDir=11
[a.dll]
file-win32-x86=thiscab
DestDir=11
[b.dll]
file-win32-x86=thiscab
DestDir=11
[RegisterFiles]
%11%\ActiveX.ocx
脚本解释如下:
[version]
内容为固定。
[Add.Code]
,前面是要下载的文件名,后面是对应这个文件的区域名,可以是任何名字,不过一般都是和文件的名字相同,这样方便维护。
[ActiveX.ocx]
区域中的第一个file值告诉ie到哪里去得到这个ocx,file一共包括三个部分,第一部分是file,这个永远都是这样的;第二部分告诉声明支持的OS,win32表示windows,mac就是苹果MAC OX了;第三部分是CPU类型,比如说x86、mips等,file的值可以取三个:一个URL、ignore和thiscab,如果是URL则说明到URL所在的位置去下;如果是ignore说明对于这种OS和CPU,不需要下载这个文件;如果是thiscab就在当前的cab文件中了。
接下来是clsid,需要填写该ocx的class guid。
接下来是FileVersion,说明了ocx的版本号。
接下来是RegisterServer,可以取两个值yes和no,如果为yes则说明ie要注册该ocx,如果是no就不必了;
再下来是DestDir,它的值是ocx将要存到本地硬盘的位置,如果它的值是10,则将ocx放到\Windows或者\WinNT下;如果是11,则放到\Windows\System或者 \WinNT\System32下;如果是空(就是没有值)则会放到\Windows或者\WinNT下的Downloaded Program Files目录下;
[a.dll]
参见[ActiveX.ocx]的解释,这里不需要clsid。
做CAB文件
打开windows/system下的iexpress.exe,点“创建新的自解压缩指导文件”,“下一步”,点“仅创建压缩文件(ActiveX安装)”,“下一步”,点“添加”,选在需要打包的OCX,DLL,INF文件,“下一步”,点“浏览”,为CA起个名字,如“X.CAB”,选中第二个“在软件包...”,“下一步”,点“不保存”,点“下一步”,直到“完成”。
制作签名文件
1》制作数字证书,在VC安装目录下找makecert.exe,在命令行下执行
makecert -ss name -n “CN=公司名” -sv d:\pos.pvk -r d:\pos.cer
makecert.exe有很多命令参数,这句话的解释如下:
sk-表示主题的密钥容器位置,
ss-主题的证书存储名称,
n-证书颁发对象,
r-证书存储位置,
-sv 导出私钥文件(为了数字签名使用)。
注意:这个时候会让输入三次密码,三次要完全一致。
2》使用Cert2Spc生成spc发行者证书:cert2spc d:\pos.cer d:\pos.spc
对CAB文件进行签名
3》在VC安装目录下找signcode.exe(下载地址:http://download.csdn.net/detail/evsqiezi/7839857),双击运行。
先选择要签名文件,下一步,选择“自定义”, 下一步,选择“从文件选择”,添加刚生成的pos.spc证书,下一步,选择刚生成的私钥pos.pvk,再下一步, 输入密码,下一步任选一个加密算法,在“数字签名先导页面”保持默认,再一直下一步。添加时间戳,在时间戳填入http://timestamp.verisign.com/scripts/timstamp.dll,再下一步完成。
这样就对CAB文件进行了签名,但是这个时候点击这个文件会发现证书不可用,原因是证书没有安装。
文件属性->数字证书->详细信息-〉查看证书-〉安装证书,进入安装证书向导,存放区域选择“受信任的根证书颁发机构”,点击完成即可。
导入证书
接下来,我们需要把数字证书(cer文件)安装到根系统存储区,“运行”执行如下命令: xxx\certmgr -add -c printocx.cer -s root
会有一个提示对话框,点确定即可。
前面所说的所有内容,都是基于买不起付费数字证书的基础上,如果你们公司愿意买数字证书的话,那是最好不过的,否则只能用这样的笨办法给用户最简单的体验。当然,也可以让用户修改IE设置和安全级别的话。
- OCX做带数字签名的CAB文件
- OCX制作CAB,数字签名制作【转】
- ActiveX控件(.ocx .cab ..)数字签名全过程
- OCX打包cab及数字签名过程
- OCX制作CAB(三) -- INF文件的编写及WEB JS 调用OCX和CAB
- 给ocx控件做数字签名
- 打包ocx为cab文件
- ActiveX Active Form ocx 网页插件做数字签名的方法
- 给CAB文件加上数字签名
- 对CAB文件进行数字签名
- asp.net 调用打包好的ocx cab文件
- 发布ActiveX控件(把ocx做成cab发布) --activex数字签名
- OCX控件打包成CAB并实现数字签名过程
- OCX控件打包成CAB并实现数字签名过程(转)
- 公布ActiveX控件(把ocx做成cab发布) -activex数字签名
- OCX控件打包成CAB并实现数字签名过程
- 有关CAB数字签名的问题
- 怎么把OCX打包成cab文件
- KMP算法next的求法
- 更相损减法和辗转相除法 求最大公约数和最小公倍数(C语言)
- 各种网络头衔的说明
- 指针的大小到底是由谁决定?是多少?
- RMQ sparse-table
- OCX做带数字签名的CAB文件
- SYN攻击原理
- win7 64位下安装nodejs 的jquery@1.6.3时无法安装依赖包jsdom的解决办法
- linux常用命令全拼
- Windows下Python添加库(模块)路径
- 'telnet' is not recognized as an internal or external command 解决办法
- 应届毕业生的户口,档案到底有多大的用处
- Android逆向分析(反编译)工具ded的使用
- substring的用法归纳