码迷,mamicode.com
首页 > 其他好文 > 详细

ActiveX打包与发布

时间:2015-02-09 12:43:41      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

一、ActiveX发布步骤

 

1、单击"开始"-->"运行(R)"-->输入"cmd"-->回车-->进入到操作的控件所在的目录;

2、创建PVK文件(私人密匙文件),在命令行中输入"makecert -sk demo demo.pvk -n CN=XXXXXXX公司",然后回车;

3、创建CER文件(公司证书),在命令行中输入"makecert -sk demo.pvk demo.cer",然后回车,如图8所示,若出现"Successed"提示,则会在E:/ demo目录下生成demo.cer文件;

4、创建SPC测试软件出版商证明书,在命令行中输入"cert2spc demo.cer demo.spc",然后回车;

5、创建INF文件,用记录本编辑以下信息:

 

  1. [version]      
  2. signature="$CHINA$"     
  3. AdvancedINF=2.0     
  4.      
  5. [Add.Code]      
  6. Polygon.dll=Polygon.dll      
  7. atl90.dll=atl90.dll          
  8.      
  9. [atl90.dll]  
  10. file-win32-x86=thiscab    
  11. //告诉ie到哪里去得到这个dll,file一共包括三个部分,第一部分是file,这个永远都是这样的(至少目前来说);第二部分告诉声明支持的OS,win32表示windows,mac就是苹果MAC  OX了;第三部分是CPU类型,比如说x86、  ppc  (Power  PC)、  mips或者alpha了  
  12. //其中“thiscab”是一个关键字,表示 CAB 包含此 DLL,也可通过指定一条绝对或相对路径,从一个 HTTP 位置下载所需的 DLL,  
  13. 例如:  file-win32-x86=http://www.mysite.com/mydir/NEEDED.DLL  
  14. FileVersion=9,00,30729,01  
  15. //说明了atl90.dll的版本号  
  16. DestDir=11  
  17. //它的值是dll将要存到本地硬盘的位置,如果它的值是10,则将dll放到/Windows或者/WinNT下;如果是11,则放到/Windows/System或者/WinNT/System32下;如果未指定任何 DestDir(典型情况),则代码安装在固定的 OCCACHE 目录中。  
  18. RegisterServer=yes  
  19.   
  20.   
  21. [Polygon.dll]      
  22. file-win32-x86=thiscab     
  23. clsid={2885EE05-A26B-11D1-B49B-00C04F98EFE0}      
  24. //“clsid”是将要安装的控件的 CLSID  
  25. FileVersion=1,0,0,1   
  26. RegisterServer=yes      

 

 

6、创建CAB文件,在命令行中输入"cabarc -s 6144 n demo.cab atl90.dll Polygon.dll demo.inf",-s 选项表示在压缩文件中保留用于代码签名的空间,n命令指定希望创建 CAB 文件,然后回车;

7、使用Code Signing Wizard签署一个CAB文件,首先双击运行工具集里面的signcode.exe(或在命令行里直接输入"signcode"后回车);

8、单击"下一步(N)"按钮,选择要进行数字签名的且已做成CAB包的文件demo.cab文件;

9、选择好CAB包后单击"下一步(N)"按钮,在选择想要的签名类型里选择"自定议(C)"并单击"下一步(N)"按钮;

10、接下来单击"从文件选择(F)"按钮,选择刚刚制作的demo.cer;

11、在图20中单击"下一步(N)",然后选择"CSP中的私钥(K)";

13、在"证书路径中的证书"中选择"证书路径中的所有证书,包括根证书(C)",在"其它证书(可选)"中选择"包括在以下PKCS #7 证书(.p7b)文件中的证书(P):",并单击"浏览(R)..."按钮选择demo.spc文件,选择完后单击"下一步(N)"按钮;

14、接下来在弹出的"数据描述"窗口中输入公司的名称和网址并单击"下一步(N)"按钮;

15、现大部份工作都已完成,在接下来的一步当中是可选的操作,其作用只是为CAB加入时间戳,此步骤完全可以不做,VeriSign:  http://timestamp.verisign.com/scripts/timstamp.dll

16、完成,在图25中单击"下一步(N)"按钮便可来到数字签名向导的最后一步,即操作总览,如图26所示,单击"完成"按钮便可大功告成;

 

17、创建*.htm文件在web页上嵌套入签名的CAB文件:

  1. <BODY>  
  2. <OBJECT   
  3.   ID="PolyCtl"   
  4.   CLASSID="CLSID:4CBBC676-507F-11D0-B98B-000000000000"  
  5.   CODEBASE="http://example.sq-soft.com/mydir/myctl.cab#version=1,0,0,1"  
  6.   width=400     
  7.   height=335>  
  8. </OBJECT>  
  9. </BODY>  
  10. CODEBASE 也可以直接指向 OCX 或 DLL 文件,如:  
  11. CODEBASE="http://example.sq-soft.com/mydir/myctl.dll#version=1,0,0,1"  
  12.   
  13. 另自动控制可变宽高:  
  14. <object       
  15.       ID="MyGl"     
  16.       classid="CLSID:42139A2D-5DA6-42C3-A9E8-E289A5C6E5BE"     
  17.       width=400     
  18.       height=335>     
  19.   </object>     
  20.   <br>     
  21.   <input   id=w   value=400   onblur=MyGl.width=parseInt(this.value)>     
  22.   <input   id=h   value=335   onblur=MyGl.height=parseInt(this.value)>     
  23.   <input   type=button   value=go   onclick=MyGl.width=parseInt(w.value)>   

 

 

regsvr32 netshare.ocx        注册netshare.ocx控件

regsvr32 /u netshare.ocx    解除netshare.ocx控件的注册

 

http://blog.csdn.net/kamaliang/article/details/3894084

ActiveX打包与发布

标签:

原文地址:http://www.cnblogs.com/ganlanzhi/p/4281183.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!