制作CAB

来源:互联网 发布:双色球数据库 编辑:程序博客网 时间:2024/03/29 19:39
1、 创建一个自己的证书文件:
makecert /sv "Sample_Atx.pvk" /n "CN=中软信息安全实验室" Sample_Atx.cer
这里,Sample_Atx.pvk表示新创建的私人密钥保存文件名
”中软信息安全实验室”是你想显示的公司名
Sample_Atx.cer是你创建最后的证书文件名
这些根据你自己的要求填写,最后得到Sample_Atx.pvk和Sample_Atx.cer两个文件。
其中,运行过程中需要输入私人密钥的保护密码,一定要输入一致,不要出错。
2、 转换cer格式为spc格式(可以省略):
cert2spc Sample_Atx.cer Sample_Atx.spc
得到Sample_Atx.spc文件。
3、 创建Sample_Atx.inf文件:如下格式
[version]
   signature="$CHICAGO$"
   AdvancedINF=2.0
[Add.Code]
   Sample_Atx.ocx=Sample_Atx.ocx
   msvcrt.dll=msvcrt.dll
   mfc42.dll=mfc42.dll
   olepro32.dll=olepro32.dll
[Cert_Atx.ocx]
   file-win32-x86=thiscab
   clsid={75486221-8862-400C-9A34-3D6B449ABFF2}
   FileVersion=1,0,0,0
   RegisterServer=yes
[msvcrt.dll]
   FileVersion=4,20,0,6164
   hook=mfc42installer
[mfc42.dll]
   FileVersion=4,2,0,6256
   hook=mfc42installer
[olepro32.dll]
   FileVersion=4,2,0,6068
   hook=mfc42installer
[mfc42installer]
   file-win32-x86=http://activex.microsoft.com/controls/vc/mfc42.cab
   run=%EXTRACT_DIR%/mfc42.exe
该INF指定了需要安装的版本的Sample_Atx.ocx。"thiscab" 是一个关键字,意指包含该INF的CAB文件。其他的DLL文件,是该Sample_Atx.ocx发布时要使用的动态连接库,您也可以从网上下载所需要的DLL文件,只要指定一个HTTP网址即可,绝对路径或者相对路径都可以,比如: file-win32-x86=http://activex.microsoft.com/controls/vc/mfc42.cab,关键字"file-win32-x86" 指定平台是 x86。 
得到一个文件的版本号的过程是:在Windows NT或者Windows 95 Explorer中右键点击该文件;从弹出列表中选择Properties,然后在接着弹出的对话框中选择版本标签。有时,您可能需要在文件版本中插入一个额外的0 。比如,对话框中显示ATL.DLL的版本号是2.00.7024,在INF文件中则变为2,00,0,7024 。
"clsid" 指的是要安装控件的CLSID。
4、 然后用命令cabarc n Sample_Atx.cab Sample_Atx.inf Sample_Atx.ocx,将Sample_Atx.ocx和Sample_Atx.inf打包到Sample_Atx.cab
5、 用chktrust检查是否正确
chktrust -v Sample_Atx.cab
6、 使用signcode按向导要求对cab文件签名,在选择签名类型时使用“自定义”,选择证书时,使用“从文件选择”。
7、 将签名后的cab文件和相应的htm文件拷贝到代理服务器的地址下
原创粉丝点击