ocx文件如何加载到网页

来源:互联网 发布:hp1020打印机选择端口 编辑:程序博客网 时间:2024/05/05 02:40

方法一:

我只会将它打成cad包,然后再网页中调用.对了,你必须知道控件的id,应该由做控件的人告诉你,因为我不会别的.给你一个例子吧.我也是看那些例子才会的.

生成cab包的问题对文件进行数字签名 
 
第一步: 
   在MSDN中搜索MicroSoft Cabinet SDK ,
   然后Down load the cabinet software Development kit
   下载这个SDK,安装,安装完后bin目录下有cabarc.exe 

第二步
  制作inf文件
  在MSDN中查找Q167158 "How to :...."讲诉了怎样如何制作一个 inf文件
 示例文件:
  [version]
   ;.............
   signature="$CHINCAGO$"
   AdvancedINF=2.0

  [Add.Code]
  Abcd.dll=Abcd.dll
  
  [Abcd.dll]
  file-win32-x86=thiscab
   ;............ 添加 control CLSID here
   clsid={C10.........-CBB9-4A13-ABA5-0994F2548FE1}
   ; 添加组建版本
   FileVersion=1,0,0,1
   RegisterServer=yes
; end


第三步:
  将inf和dll打包成cab
   cabarc n Abcd.cab Abcd.inf Abcd.dll

第四步:
  生成cert证书
   数字签名要到Microsoft 下载Active SDK Tools 包
     包里有makecert.exe cert2spc.exe signcode.exe
   为得到签名用的spc格式
     makecert /sv "key.pvk" /n "cn=VicAli" VicAli.cer
  执行过程中会要求输入密码,密码要一致
  
第五步:
 cert2spc VicAli.cer VicAli.spc
生成VicAli.spc文件

第六步:

  对cab文件进行签名
  运行singcode,选择Abcd.cab
  下一步后出现签名选项,选择自定义,选择VicAli.spc ,在选择key.PVK,
   输入密钥的保护密码
  ,选择MD5,下一步,下一步,下一步结束签名

ASP文件里安装客户端:
  <object id=Abcd codebase=Abcd.cab height=27 width=27 classid=clsid:.......>
    <embed height="27" width="27">
    </embed>
  </object>
  <script language=vbscript>
      <!--
      if Abcd.isAppExisting then 
        MsgBox "ok"
      else
        Abcd.download
       Abcd.DoSetup
      endif
      -->
   </Script>
另一个示例 :

如何将MicroDraw控件制作为CAB包在网页上使用 

不少用户在网页上使用Microdraw控件的时候都遇到了无法生成CAB自动嵌入到网页中的问题, 我们提供如下制作步骤和演示例子供用户参考。

 因为Microdraw控件包含了一系列功能,如果将库文件全部打包为CAB文件会比较大,所以用户可以根据自己的需求打包相 应的库文件。


步骤:

1 制作CAB包
2 CAB签名
3.网页调用


1.制作CAB包
 1)CABSDK包,请到微软网站上下载 http://msdn.microsoft.com/workshop/management/cab/cabdl.asp 
 解压缩后有一个文件 cabarc.exe ,就用它来制作。
 2)创建一个文本文件, MicroDrawOcx.inf 内容如下
  
signature="$CHICAGO$"
AdvancedINF=2.0  

microdrawocx.ocx = microdrawocx.ocx
asoda.dll = asoda.dll
askern.dll = askern.dll
asimage.dll = asimage.dll
asbase.dll = asbase.dll

; needed DLL

file-win32-x86=thiscab
DestDir=10
FileVersion=4,0,0,1


file-win32-x86=thiscab
DestDir=10
FileVersion=5,7,1,0


file-win32-x86=thiscab
DestDir=10
FileVersion=4,0,0,1


file-win32-x86=thiscab
DestDir=10
FileVersion=4,0,0,1


file-win32-x86=thiscab
RegisterServer=yes
clsid={8A629F67-E4F6-4A32-8009-0247F8E9ADEE}
DestDir=10
FileVersion=4,0,0,1

; end of INF file
   3) 生成CAB文件
(DOS命令行下运行)
cabarc.exe -s 6144 N microdrawocx.cab asbase.dll asimage.dll askern.dll asoda.dll microdrawocx.ocx microdrawocx.inf

-s 6114 是为下一步的签名在CAB文件内预留空间


2.CAB签名
文中提到的数字签名工具包,请在此处下载 
http://www.cnblogs.com/Files/babyt/SignTool.rar 
进入DOS模式下该目录 
为了便于操作,建议你将这个工具包放在磁盘根目录下,目录名称起得简单些 
输入以下命令,生成一个名为babyt.cer的证书 

(DOS命令行下运行)
makecert -sv xrens.pvk -n "CN=www.weiblo g.com,E=xrens@21cn.com,O=孤山一笑" xrens.cer 

运行 singcode.exe ,按向导提示进行


3 网页上调用
。。。。
<p align="center">
<object classid="clsid:8A629F67-E4F6-4A32-8009-0247F8E9ADEE" id="MicroDrawOcx1" CODEBASE="http://www.microdraw.com/down/microdrawocx.cab#version=4,0,0,1" width=100% height=100%>
  <param name="_Version" value="65536">
  <param name="_ExtentX" value="24262">
  <param name="_ExtentY" value="16219">
  <param name="_StockProps" value="0">
</object>
</p>
。。。。
如果使用时候出现问题。 请到windows系统目录 如:“c:\winnt” 下,将 microdrawocx.ocx& nbsp; asbase.dll askern.dll文件删除,重新打开网页



制作CAB包,并进行数字签名。 可以下载压缩文件 c ab.rar ,解压缩后运行 makecab.bat  按照提示进行。
压缩包中有相关帮助文件!!!