none
BHO如何做成网页安装 RRS feed

  • 问题

  • 自己做了一个BHO,在本机注册是可以用的,问题是不能把这个BHO发给每一个客户去注册,如何把这个BHO做成在访问我的网站时类似弹出那个需要安装ActiveX控件的提示让用户安装?就像qq空间不是有qq的一些ActiveX?
    2010年7月8日 2:41

答案

  • 下载 cabsdk 和 codesign

    制作证书:

    cd D:\ActiveX\codesign
    makecert /sv "BHODemo.PVK" /n "CN=yourname" BHODemo.cer 

    psd:123456

    cert2spc BHODemo.cer BHODemo.spc

    制作CAB包:

    cd D:\ActiveX\cabsdk\bin
    cabarc -s 6144 n D:\ActiveX\BHODemo.CAB D:\ActiveX\BHODemo.ocx D:\ActiveX\BHODemo.inf

    cabarc -s 6144 n D:\ActiveX\BHODemo.CAB D:\ActiveX\MSVCP60.DLL D:\ActiveX\BHODemo.ocx D:\ActiveX\BHODemo.inf

    cd D:\ActiveX\codesign

    SignCode -spc BHODemo.spc -v BHODemo.pvk -t http://timestamp.verisign.com/scripts/timstamp.dll D:\ActiveX\BHODemo.cab
    SignCode -spc D:\ActiveX\BHODemo.spc -v D:\ActiveX\BHODemo.pvk D:\ActiveX\BHODemo.CAB


    chktrust -v D:\ActiveX\BHODemo.CAB

    制作网页:

    <HTML>
    <HEAD>
    <TITLE></TITLE>
    </HEAD>
    <BODY>

    <table border=1>
    <tr>
     <td>
    <OBJECT ID="ob1" WIDTH=0 HEIGHT=0
     CODEBASE="BHODemo.CAB#Version=1,0,0,2"
     CLASSID="CLSID:BE362B78-BABC-494E-9BB9-567AE6D93384">
        <PARAM NAME="_Version" VALUE="65536">
        <PARAM NAME="_ExtentX" VALUE="3620">
        <PARAM NAME="_ExtentY" VALUE="1873"></OBJECT>
       </td>
     </tr>
     
    </table>

    <input type="button" value="。。。。" name="B1">
    </body>
    </html>

    2010年7月8日 10:07

全部回复

  • ActiveX 是这样做,打包成CAB,用证书签名,然后在页面中放一个 OBJECT 标签,把你的CAB包路径填进去,并附上版本号和 CLASSID。
    2010年7月8日 3:40
  • ActiveX 是这样做,打包成CAB,用证书签名,然后在页面中放一个 OBJECT 标签,把你的CAB包路径填进去,并附上版本号和 CLASSID。

    步骤如何?如何把我做的这个BHO打包成CAB
    2010年7月8日 9:23
  • 现在baidu\google有很多文章是如何开发 一个BHO,但是都没有讲到如何把BHO部署和发布
    2010年7月8日 9:24
  • 下载 cabsdk 和 codesign

    制作证书:

    cd D:\ActiveX\codesign
    makecert /sv "BHODemo.PVK" /n "CN=yourname" BHODemo.cer 

    psd:123456

    cert2spc BHODemo.cer BHODemo.spc

    制作CAB包:

    cd D:\ActiveX\cabsdk\bin
    cabarc -s 6144 n D:\ActiveX\BHODemo.CAB D:\ActiveX\BHODemo.ocx D:\ActiveX\BHODemo.inf

    cabarc -s 6144 n D:\ActiveX\BHODemo.CAB D:\ActiveX\MSVCP60.DLL D:\ActiveX\BHODemo.ocx D:\ActiveX\BHODemo.inf

    cd D:\ActiveX\codesign

    SignCode -spc BHODemo.spc -v BHODemo.pvk -t http://timestamp.verisign.com/scripts/timstamp.dll D:\ActiveX\BHODemo.cab
    SignCode -spc D:\ActiveX\BHODemo.spc -v D:\ActiveX\BHODemo.pvk D:\ActiveX\BHODemo.CAB


    chktrust -v D:\ActiveX\BHODemo.CAB

    制作网页:

    <HTML>
    <HEAD>
    <TITLE></TITLE>
    </HEAD>
    <BODY>

    <table border=1>
    <tr>
     <td>
    <OBJECT ID="ob1" WIDTH=0 HEIGHT=0
     CODEBASE="BHODemo.CAB#Version=1,0,0,2"
     CLASSID="CLSID:BE362B78-BABC-494E-9BB9-567AE6D93384">
        <PARAM NAME="_Version" VALUE="65536">
        <PARAM NAME="_ExtentX" VALUE="3620">
        <PARAM NAME="_ExtentY" VALUE="1873"></OBJECT>
       </td>
     </tr>
     
    </table>

    <input type="button" value="。。。。" name="B1">
    </body>
    </html>

    2010年7月8日 10:07
  • 下载 cabsdk 和 codesign

    制作证书:

    cd D:\ActiveX\codesign
    makecert /sv "BHODemo.PVK" /n "CN=yourname" BHODemo.cer 

    psd:123456

    cert2spc BHODemo.cer BHODemo.spc

    制作CAB包:

    cd D:\ActiveX\cabsdk\bin
    cabarc -s 6144 n D:\ActiveX\BHODemo.CAB D:\ActiveX\BHODemo.ocx D:\ActiveX\BHODemo.inf

    cabarc -s 6144 n D:\ActiveX\BHODemo.CAB D:\ActiveX\MSVCP60.DLL D:\ActiveX\BHODemo.ocx D:\ActiveX\BHODemo.inf

    cd D:\ActiveX\codesign

    SignCode -spc BHODemo.spc -v BHODemo.pvk -t http://timestamp.verisign.com/scripts/timstamp.dll D:\ActiveX\BHODemo.cab
    SignCode -spc D:\ActiveX\BHODemo.spc -v D:\ActiveX\BHODemo.pvk D:\ActiveX\BHODemo.CAB


    chktrust -v D:\ActiveX\BHODemo.CAB

    制作网页:

    <HTML>
    <HEAD>
    <TITLE></TITLE>
    </HEAD>
    <BODY>

    <table border=1>
    <tr>
     <td>
    <OBJECT ID="ob1" WIDTH=0 HEIGHT=0
     CODEBASE="BHODemo.CAB#Version=1,0,0,2"
     CLASSID="CLSID:BE362B78-BABC-494E-9BB9-567AE6D93384">
        <PARAM NAME="_Version" VALUE="65536">
        <PARAM NAME="_ExtentX" VALUE="3620">
        <PARAM NAME="_ExtentY" VALUE="1873"></OBJECT>
       </td>
     </tr>
     
    </table>

    <input type="button" value="。。。。" name="B1">
    </body>
    </html>


    微软提供的那个codesign下载链接都是404
    2010年7月9日 6:41
  • .inf是手工自己写呢,还是有工具自动生成

    2010年7月9日 6:46
  • .inf是手工自己写呢,还是有工具自动生成


    自己写 .inf 文件格式如下:

    [Version]
    Signature="$Chicago$"
    AdvancedINF=2.5

    [Add.Code]
    BHODemo.ocx=BHODemo.ocx
    msvcrt.dll=msvcrt.dll 

    [BHODemo.ocx]
    file-win32-x86=thiscab
    clsid={C01F1426-74C6-4340-87D5-07395910839E}
    FileVersion=1,1,0,0
    RegisterServer=yes
    DestDir=11

    [msvcrt.dll]
    FileVersion=4,20,0,6164
    hook=mfc42installer

    2010年7月9日 7:24
  • 我有 codesign 344kb  cabsdk 424 kb
    2010年7月9日 7:31
  • 我有 codesign 344kb  cabsdk 424 kb

    为啥微软官方的下载都失效了呢?你能提供那个codesign下载不?
    2010年7月11日 12:20
  • 我有 codesign 344kb  cabsdk 424 kb

    为啥微软官方的下载都失效了呢?你能提供那个codesign下载不?


    更换地址了,估计,要不就是觉得过时了,它们有新的技术了.比如使用Visual Studio的安装包制作工具.

    我无法提供下载,我只能发邮件.

    2010年7月12日 1:28
  • 我有 codesign 344kb  cabsdk 424 kb

    为啥微软官方的下载都失效了呢?你能提供那个codesign下载不?


    更换地址了,估计,要不就是觉得过时了,它们有新的技术了.比如使用Visual Studio的安装包制作工具.

    我无法提供下载,我只能发邮件.


    安装包制作工具我知道的,现在是codesign 没有找到有替代的,你能发codesign 到我的邮箱不?cris.huang@nsynergy.cn
    2010年7月12日 6:08
  • 已发送,请查收.
    2010年7月12日 6:25