html注册cab包,OCX控件打包成CAB并实现数字签名过程

html注册cab包,OCX控件打包成CAB并实现数字签名过程OCX打包CAB并签名过程一、打包cab制作cab文件时需要将所有的相关文件都包含进去,可以通过Depends(VC自带的)检查需要的文件。使用inf文件将这些东西都写进去。1、制作inf文件default.INF最开始一般是[Version]区:eg:[Version]signature=”$CHICAGO$”AdvancedINF=2.0接下来就是最重要的[Add.Code]区:eg:…

大家好,又见面了,我是你们的朋友全栈君。

OCX打包CAB并签名过程

一、打包cab

制作cab文件时需要将所有的相关文件都包含进去,可以通过Depends(VC自带的)检查需要的文件。使用inf文件将这些东西都写进去。

1、制作inf文件

default.INF

最开始一般是[Version]区:

eg: [Version]

signature=” $CHICAGO$ “

AdvancedINF=2.0

接下来就是最重要的[Add.Code]区:

eg: [Add.Code]

getcertocx.ocx=getcertocx.ocx

前面是要下载的文件名,后面是对应这个文件的区域名,可以是任何名字,不过一般都是和文件的名字相同,这样方便维护。

再接下来是各个文件的区域了

[getcertocx.ocx]

file-win32-x86=thiscab

RegisterServer=yes

clsid={0A0488CF-F9AB-4AC4-AD8F-CD893553DD22}

DestDir=11

FileVersion=1,0,0,1

[getcertocx.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文件中了。

第二部分是RegisterServer,可以取两个值yes和no,如果为yes则说明ie要注册该ocx,如果是no就不必了;

接下来是clsid,需要填写该ocx的class guid。

再下来是DestDir,它的值是ocx将要存到本地硬盘的位置,如果它的值是10,则将ocx放到\Windows或者\WinNT下;如果是11,则放到\Windows\System或者

\WinNT\System32下;如果是空(就是没有值)则会放到\Windows或者\WinNT下的Downloaded Program Files目录下;

最后是FileVersion,说明了ocx的版本号。

2、制作cab文件

利用iexpress.exe(windows提供的一个向导式cab制作工具)

0818b9ca8b590ca3270a3433284dd417.png

选“创建新的自解压缩指定文件”,点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

选“仅创建压缩文件(ActiveX安装)”,点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

点“添加”将上边制作好的default.inf和getcertocx.ocx文件添加进来,点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

点“浏览”输入要生成的CAB文件名称,并选中“在软件包中使用长文件名保存文件”,之后点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

选“不保存”,点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

点“完成”退出向导,cab文件生成。

0818b9ca8b590ca3270a3433284dd417.png

二、签名证书的申请

0818b9ca8b590ca3270a3433284dd417.png

点“用表格申请证书”,弹出“申请免费证书页面”,“识别信息”可以随意填写,“证书用途”要选择“代码签名证书”,“加密服务提供”是用微软提供的“Microsoft String Cryptographic Prover”,其他默认,点“提交”即可。

0818b9ca8b590ca3270a3433284dd417.png

三、对cab文件进行签名

利用signtool.exe对cab文件进行签名,通过后缀参数:signwizard可以显示数字签名向导界面。

0818b9ca8b590ca3270a3433284dd417.png

点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

点“浏览”选要签名的cab文件,文件类型选“Cabinet 文件(*.cab)”,选完以后点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

选“典型”,点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

点“从存储区选择”,选择预期目的为“代码签名”的证书,然后点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

“描述”和“Web位置(可选)”填写签名数据的描述,点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

选中“将时间戳添加到数据中”,在时间戳服务URL栏写入:

点“下一步”。

0818b9ca8b590ca3270a3433284dd417.png

点“完成”。

0818b9ca8b590ca3270a3433284dd417.png

点“确定”。

0818b9ca8b590ca3270a3433284dd417.png

点“确定”退出数字签名向导,对应的getcert.CAB文件已被签名。

可以右键点击“getcert.cab”,选“属性”,查看“数字签名”信息。

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

四,html页面

function buttonopen_click()

{

}

height=”100%” VIEWASTEXT>

转自:http://www.cnblogs.com/rushoooooo/archive/2011/06/22/2087542.html

ps:1.也可以自己制作证书,需要makecert.exe

cmd里面执行

makecert -n “CN=TESTKK” -sv testkk.pvk testkk.cer

2.使用时必须开启浏览器”对没有标记为安全的ActiveX控件进行初始化和脚本运行”和”下载未签名的ActiveX控件”,否则浏览器将阻止ActiveX的下载,并显示”windows 已经阻止此软件因为无法验证发行者”,点击开发商信息你会看到提示”由于当前的策略设置,该测试根不受信任;证书路径因此而终止”。 3.例子下载http://download.csdn.net/detail/dragoo1/5307021

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/158603.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • svn用户名和密码设置_git配置本地用户名密码

    svn用户名和密码设置_git配置本地用户名密码SVN配置用户192.168.1.200   Administrator     ydd!@#$1234()90 1、备份D:\svn\conf\authz,再修改2、备份D:\svn\conf\passwd,再修改注意:* 权限配置文件中出现的用户名必须已在用户配置文件中定义。* 对权限配置文件的修改立即生效,不必重启s

  • 斐波那契数列python实现

    斐波那契数列python实现方法一deffbnc(n):ifnotisinstance(n,int):raiseValueError('nmustbeint')ifn==1:retu

  • Python金融行业必备工具

    Python金融行业必备工具有些国外的平台、社区、博客如果连接无法打开,那说明可能需要“科学”上网量化交易平台国内在线量化平台:BigQuant-你的人工智能量化平台-可以无门槛地使用机器学习、人工智能开发量化策略,基于python,提供策略自动生成器镭矿-基于量化回测平台果仁网-回测量化平台京东量化-算法交易和量化回测平台聚宽-量化回测平台优矿-通联量化实验室Ricequant

  • ajax中headers无法传参,jquery ajax怎么通过header传递参数

    ajax中headers无法传参,jquery ajax怎么通过header传递参数

    2021年11月27日
  • 人脸去重算法_哈希去重算法

    人脸去重算法_哈希去重算法对比其他算法『百度的去重算法』百度的去重算法最简单,就是直接找出此文章的最长的n句话,做一遍hash签名。n一般取3。工程实现巨简单,据说准确率和召回率都能到达80%以上。『shingle算法』shingle原理略复杂,不细说。shingle算法我认为过于学院派,对于工程实现不够友好,速度太慢,基本上无法处理海量数据。『其他算法』具体看微博上的讨论…

    2022年10月26日
  • pytest重试_pytest失败重跑

    pytest重试_pytest失败重跑安装:pip3installpytest-rerunfailures重新运行所有失败用例要重新运行所有测试失败的用例,请使用–reruns命令行选项,并指定要运行测试的最大次数:$py

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号