activeX 打包

原文 http://www.docin.com/p-409284488.html

CAB打包文档说明

  1. 文档目的

本文档的目的在于说明将ocx和dll以及相关的文件打包成一个CAB包,以便在网页下调用ocx控件时免去手工将dll和其他一下文件拷贝到客户机,方便了现场施工。

  1. 打包工具

打包工具有makeCAB

其中,ActvxDoc.exe用来查看ocx的CLSID,signcode.exe用来对打包好的cab进行数字签名,其它的用于生成数字认证文件。

  1. 打包过程
  2. 将打包工具makeCAB里面的所有文件放到系统文件夹system32目录下
  3. 新建一个文件夹,将所有要打包进cab的文件放在该新建的文件夹下
  4. 编写inf安装文件。新建一个txt文本文档,并将其改名为*.inf安装文件,按照以下格式编写inf文件。(打包时注意去除红色的字)

[version]

signature="$CHINA$"

AdvancedINF=1.0

[Add.Code]             --该段为所打包的文件

logocx.ocx=logocx.ocx

MFC42D.DLL=MFC42D.DLL

MFCO42D.DLL=MFCO42D.DLL

MSVCP60D.DLL=MSVCP60D.DLL

MSVCRTD.DLL=MSVCRTD.DLL

pssts.ini=pssts.ini

[logocx.ocx]            --打包的ocx

file=thiscab

clsid={5710EB41-87CE-4BF8-9A24-F520556714BB}   --ocx的序列号

FileVersion=1,0,0,1

RegisterServer=yes

--以下是其他的相关文件

[MFC42D.DLL]

file-win32-x86=thiscab

RegisterServer=no

DestDir=11                --存放目录为system32

FileVersion=7,10,3052,4

[MFCO42D.DLL]

file-win32-x86=thiscab

RegisterServer=no

DestDir=11

FileVersion=7,10,3052,4

[MSVCP60D.DLL]

file-win32-x86=thiscab

RegisterServer=no

DestDir=11

FileVersion=7,10,3052,4

[MSVCRTD.DLL]

file-win32-x86=thiscab

RegisterServer=no

DestDir=11

FileVersion=7,10,3052,4

[pssts.ini]

file-win32-x86=thiscab

DestDir=11

  1. 编写运行的bat文件。新建一个txt文本文档,并将其改名为*.bat运行文件,按照以下格式编写bat文件。(打包时注意去除红色的字)

--生成数字签名文件*.pvk

--logocx是文件路径

makecert -sk logocx logocx.pvk -n CN=迪科电力

--生成数字签名文件*.cer

makecert -sk logocx.pvk logocx.cer

--生成数字签名文件*.spc

cert2spc logocx.cer logocx.spc

--打包cab文件,其中【MFC42D.DLL MFCO42D.DLL MSVCP60D.DLL MSVCRTD.DLL pssts.ini logocx.ocx logocx.inf】为要打包进cab中的文件,注意要包含上一步编写的inf文件

cabarc -s 6144 n logocx.cab MFC42D.DLL MFCO42D.DLL MSVCP60D.DLL MSVCRTD.DLL pssts.ini logocx.ocx logocx.inf

--运行数字签名程序

signcode.exe

  1. 运行编写好的bat文件。

将所有需要打包的文件和上两步编写好的inf、bat放在同一个目录下,双击bat文件运行,首先生成数字签名所需要的pvk、cer、spc文件,然后打包成cab,最后运行signcode.exe程序进行数字签名。(以上步骤为双击bat文件后自动生成的)

在signcode界面中,

点击【下一步】,点击【浏览(R)…】,更改文件类型为*.cab,选中刚生成的cab文件,点击【打开】,然后点击【下一步】,

选择【自定义】,然后点击【下一步】,

点击【从文件选择】,打开刚才生成的cer文件,点击【下一步】

首先选择【磁盘上的私钥文件】,点击浏览选择刚才生成的PVK文件,然后选择【CSP中的私钥】,在【密钥容器】中选择*.pvk(为刚才选择的pvk),点击【下一步】。

选中【sha1】,然后点击【下一步】

选中【包括在以下PKCS#7(.p7b)文件中的证书(P)】,点击浏览,选择刚才生成的spc文件,点击【下一步】

然后一直点击【下一步】直到数字签名完成。

  1. 版本控制

对.cab包进行版本更新,使用户能够打开浏览器时自动下载更新.cab包,需进行如下处理。

  1. 对ocx控件的版本进行更新。方法如下:打开源代码,找到资源文件,修改版本信息,如下图:

修改后重新生成ocx文件。

  1. 对打包时的.inf文件中ocx中的版本信息进行更新,举例如下:

[logocx.ocx]            --打包的ocx

file=thiscab

clsid={5710EB41-87CE-4BF8-9A24-F520556714BB}   --ocx的序列号

FileVersion=1,0,0,1

RegisterServer=yes

修改FileVersion=1,0,0,3

  1. 页面加载控件时添加版本信息,如下列红色字体所示:<object id="slipprint" style="display:none" width=30 height=30 classid="CLSID: 5710EB41-87CE-4BF8-9A24-F520556714BB" codebase="../activeX/DicEPSON532.cab#version=1,0,0,3">
  1. 注意事项

虽然已对打包好的cab进行了数字签名,但是该签名并未在网上注册,在客户端仍然需要设为信任站点。

6.如果安装不成功可以安装 depends 看看你的插件缺少什么dll,自行去补充

重要提示

 

平台工具集 Visual Studio 2013 - Windows XP (v120_xp)

relase 编译 多线程 选mt

所在的“项目”=>>“属性”=>>“配置属性”=>>“C/C++”=>>“预处理器”=>>“预处理定义” 移除_DENUG

时间: 2024-07-31 19:22:02

activeX 打包的相关文章

activex打包

http://www.cnblogs.com/weiwin/p/4493835.html activeX 打包 原文 http://www.docin.com/p-409284488.html CAB打包文档说明 文档目的 本文档的目的在于说明将ocx和dll以及相关的文件打包成一个CAB包,以便在网页下调用ocx控件时免去手工将dll和其他一下文件拷贝到客户机,方便了现场施工. 打包工具 打包工具有makeCAB 其中,ActvxDoc.exe用来查看ocx的CLSID,signcode.ex

ActiveX打包与发布

一.ActiveX发布步骤 1.单击"开始"-->"运行(R)"-->输入"cmd"-->回车-->进入到操作的控件所在的目录: 2.创建PVK文件(私人密匙文件),在命令行中输入"makecert -sk demo demo.pvk -n CN=XXXXXXX公司",然后回车: 3.创建CER文件(公司证书),在命令行中输入"makecert -sk demo.pvk demo.cer&qu

atl控件发布打包&lt;转&gt;

http://www.cnblogs.com/gengaixue/archive/2010/08/13/1799112.html ActiveX打包与发布 在VS2005或VS2008安装后发现路径**VC7\Common7\Tools\Bin\下有许多小工具,我对带有Cert的文件比较感兴趣.经过研究,发现是有关证书和签名的,当然,该证书未被证书认证机构认可.下面列出这些工具和我的使用心得.1.Makecert.exe ---证书创建工具2.Cert2Spc.exe ---发行者证书测试工具3

VC2005从开发MFC ActiveX ocx控件到发布到.net网站的全部过程

开篇语:最近在弄ocx控件发布到asp.net网站上使用,就是用户在使用过程中,自动下载安装ocx控件.(此文章也是总结了网上好多人写的文章,我只是汇总一下,加上部分自己的东西,在这里感谢所有在网上发表相关内容的朋友们.) ActiveX控件用于Web的过程是将控件嵌入主页中,用户通过浏览器访问该主页时,将主页中的控件下载,并在用户机器上注册,以后就可在用户的浏览器上运行.控件下载一次后就驻留在用户本地机器上,下次再访问相同的主页时,可不再下载该控件,而是直接运行用户本地的控件.这里控件容器就是

配置ActiveX控件在网页中下载安装

先检查客户端浏览器是否安装了ActiveX控件,如果没有安装ActiveX,就需要先给浏览器提示下载并允许安装.否则就直接使用该ActiveX控件.我们可以使用CodeBase来满足我们的要求:下面是一个html的调用: <object classid="clsid:636B8CE1-7512-464C-B63C-FC75BDCA21DB" codebase="Charles2008ActiveX/setup.exe#version=1,0,0,0" widt

[activeX]VC2005开发MFC ActiveX ocx控件全过程[转]

ActiveX控件用于Web的过程是将控件嵌入主页中,用户通过浏览器访问该主页时,将主页中的控件下载,并在用户机器上注册,以后就可在用户的浏览器上运行.控件下载一次后就驻留在用户本地机器上,下次再访问相同的主页时,可不再下载该控件,而是直接运行用户本地的控件.这里控件容器就是浏览器,用户不需要通过浏览器调用控件的属性或方法.因此,开发面向Web的ActiveX控件比开发桌面的控件还要简单些,所复杂的是如何将该控件很好地嵌入主页,使用户能正常浏览.下面介绍这个问题. 一.        创建MFC

ActiveX控件打包成Cab置于网页中自动下载安装 (转)

[背景] 做过ActiveX控件的朋友都知道,要想把自己做的ActiveX控件功能放在自己的网页上使用,那么用户在客户端就必须进行本地的注册,也就是说用户得首先要把该ActiveX控件(test.ocx)放在本机的%system%/system32下,然后运行DOS工具里面运行regsvr32 test.ocx命令进行注册.但如果真是这么去做的话,那么代表着你处于危险之中了,因为您是通过让用户自己去部署设置环境来达到你的目的,这就失去软件项目本身所存在的价值.那么面对这种情况,我们应该如何解决呢

C# Activex开发、打包、签名、发布

一.前言      最近有这样一个需求,需要在网页上面启动客户端的软件,软件之间的通信.调用,单单依靠HTML是无法实现了,因此必须借用Activex来实现.由于本人主要擅长C#,自然本文给出了用C#实现的范例,本文的预期效果是有一定Winform基础的人可都轻松读懂本文. 文章主要介绍了以下几个部分: 1.用C#制作Activex控件,并发布为msi安装文件 2.将exe打包为cab,达到浏览器自动安装的效果 3.给cab数字签名(可选) 4.将Activex应用到网页上 二.用C#制作Act

C#制作、打包、签名、发布Activex全过程

一.前言       最近有这样一个需求,需要在网页上面启动客户端的软件,软件之间的通信.调用,单单依靠HTML是无法实现了,因此必须借用Activex来实现.由于本人主要擅长C#,自然本文给出了用C#实现的范例,本文的预期效果是有一定Winform基础的人可都轻松读懂本文. 文章主要介绍了以下几个部分: 1.用C#制作Activex控件,并发布为msi安装文件 2.将msi打包为cab,达到浏览器自动安装的效果 3.给cab数字签名(可选) 4.将Activex应用到网页上 二.用C#制作Ac