我的ocx使用vc写的
要保证生成的cab能够自动注册
我看到vb里面有自己的工具
好像vb只能处理自己编写的ocx
急!!!

解决方案 »

  1.   

    可以用 installshield 的打包,选择.cab,打包好了,就可以自动下载了,
      

  2.   

    如何修改ocx的产品版本
    我写的ocx编译生成后版本为1.0.0.1
    我想修改它,比如改成1.0.0.2
    如何修改?
      

  3.   

    ActiveX发布步骤创建PVK文件[私人密匙文件]makecert -sk DigitalTitan DigitalTitan.pvk
    makecert -n CN=TelStar TelStar创建CER文件[公司证书]makecert -sk DigitalTitan.pvk TelStar.cer创建SPC测试软件出版商证明书cert2spc root.cer TelStar.cer TelStar.spc创建INF文件[version]
    signature="$CHINA$"
    AdvancedINF=2.0[Add.Code]
    WebOffice.ocx=WebOffice.ocx
    mfc70.dll=mfc70.dll
    msvcrt.dll=msvcrt.dll
    olepro32.dll=olepro32.dll[mfc70.dll]
    file-win32-x86=thiscab
    FileVersion=7,0,9466,0
    DestDir=11
    RegisterServer=yes[msvcrt.dll]
    file-win32-x86=thiscab
    FileVersion=6,1,9844,0
    DestDir=11
    RegisterServer=yes[olepro32.dll]
    file-win32-x86=thiscab
    FileVersion=5,0,4522,0
    DestDir=11
    RegisterServer=yes[WebOffice.ocx]
    file-win32-x86=thiscab
    clsid={05430EC0-69CA-437A-B1F9-4B78B8647BEA} 
    FileVersion=1,0,0,1
    RegisterServer=yes
    ;创建CAB文件
    cabarc -s 6144 n WebOffice.cab msvcrt.dll msvcp70.dll msvcr70.dll mfc70.dll olepro32.dll ASYCFILT.DLL STDOLE2.TLB WebOffice.ocx WebOffice.inf使用Code Signing Wizard签署一个CAB文件
    SIGNCODE.exe
    时间戳服务:verisign的时间服务器,这个是免费的.
    http://timestamp.verisign.com/scripts/timstamp.dll另:
    makeCert -sk DigitalTitanKey -n "CN=TelStar" -ss TelStar TelStar.cer
    makecert -is TelStar -ic TelStar.cer -ss TelStarCompany.cerCert2SPC MyCert.cer MyCert.spc
      

  4.   

    打包工具包:
    申请证书:Win2000:控制面板-管理工具-证书颁发机构[没有则更新组件]Http://127.0.0.1/CertSrv/
    签名工具包:http://download.microsoft.com/download/b/e/f/bef2551b-401d-4311-ab8f-13d3892b8154/codesigningx86.exe
    时间戳服务:verisign的时间服务器,这个是免费的.
    http://timestamp.verisign.com/scripts/timstamp.dll
      

  5.   

    现在已经一切ok了,但是有一个问题,用户第一次浏览页面时会自动下载该cab文件,但是我升级自己的ocx重新做成cab后,客户端无法识别版本,不会自动下载更新的。为什么?如何解决?
      

  6.   

    哦,是么,我修改了版本也没有搞定,能给个msdn索引么,我去看看。谢了。
      

  7.   

    hi, 我用MFC做了个ActiveX,也签名了,在本地打开网页都很正常,当把他放到web server上后,首次访问网页时也提示并安装了,但是控件却没有显示,我在IE的intelnet选项里面"常规->设置->察看对象"里面也可以看到我的控件,以及正确版本.我以为是缺MFC的DLL之类东西,所以编译了个static MFC Library的OCX,并把这个ocx文件copy到
    C:\WINNT\Downloaded Program Files下面,但是依然不难显示(尽管我安装了VC6.0),我需要把MFC的支持DLL也打包进CAB,也需要写个ini文件吗? 我的qq 27812478 [email protected]
      

  8.   

    HTML中加参数#Version
    例子:
    <object id=DWebOffice style="left: 0px; width: 100%; top: 0px; height: 450px;" classid="clsid:05430EC0-69CA-437A-B1F9-4B78B8647BEA" viewastext codebase="http://10.70.38.10:9001/ActiveX/WebOffice.cab#version=1,0,0,3">
      

  9.   

    gjd111686(数字金刚) 偶像!
      

  10.   

    打包工具包:http://download.microsoft.com/download/platformsdk/cab/2.0/w98nt42kmexp/en-us/Cabsdk.exe
      

  11.   

    http://www.ccw.com.cn/applic/prog/htm2003/20031219_091RQ.asp
      

  12.   

    gjd111686(数字金刚)说得很详细
      

  13.   

    看看这里吧
    http://blog.haha567.com/blog.php?job=art&articleid=a_20040702_025555
      

  14.   

    gjd111686(数字金刚)说得很详细,牛人!
      

  15.   

    VS6.0的Package & Deployment Wizard工具
      

  16.   

    版本控制问题怎么没人回答呀,详见:http://community.csdn.net/Expert/topic/3119/3119597.xml?temp=.3513147
    兄弟们帮忙顶顶,谢谢~~~
      

  17.   

    现在已经一切ok了,但是有一个问题,用户第一次浏览页面时会自动下载该cab文件,但是我升级自己的ocx重新做成cab后,客户端无法识别版本,不会自动下载更新的。为什么?如何解决?
    需要保证二进制兼容,这样注册表中的clsid不会改变
      

  18.   

    关于数字签名的问题:问题现象:在自己编写的DLL之类的东西在WEB上使用的时候会提示ACTIVEX控件不安全或者每次使用时提示安装不安全的ACTIVEX解决方法:这个方法是俺花了2天时间研究出来的,肯定有不正确的地方,希望各位指正。
             使用数字签名可以解决该问题1、在你的机器上数字签名所需要的工具,叫什么名字不记得了,只晓得是个ZIP文件,叫codesigningx86,是WINDOWS下面使用的,正常解开后会有以下文件:
    ==============
    cabarc.exe
    cert2spc.exe
    chktrust.exe
    makecat.exe
    makecert.exe (必须)
    makectl.exe
    setreg.exe
    signcode.exe (必须)
    ================
        以上的可以的微软的站点下载
        以上根据需要来确定采用哪些工具,这里我采用了makecert.exe 来制作认证的证书,signcode.来进行数字签名这时会在你的目录下生成个oranje.pvk和oranje.cer文件,打开.cer文件可以看到是证书信息
         颁发给:王成
         颁发者:Rooe Agenct
         有效起始日期 2003-11-29 到 2040-1-1好了,有了这个证书可以进一步搞你的DLL或CAB等的认证了2、进入DOS状态,进入改目录输入:makecert -sv oranje.pvk -n "CN=王成,[email protected],O=王成" oranje.cer
    这个是制作证书 -sv是制作加密的文件(好象是的),CN是公司 E=EMail O=认证公司的名称 oranje.cer是生成文件的名称,好象都是以.cer为后缀的这时制作的证书是没有任何认证公司认证的,听说认证一年需要好几百美金,俺没钱,所以只好自己做个使用了,功能都一样3、运行Signcode.exe出现一个数字签名向导
        下一步 选择需要签名的文件(dll.ocx.cab等)
        下一步 这里选择了自定义
        下一步 选择签名证书 从文件选择 选择刚才做好的oranje.cer 
        下一步 私钥 磁盘上的私钥文件 点浏览选择刚才做好的oranje.pvk 
        下一步 输入密码 
        下一步 选择算法,这里我选择的是sha1 
        下一步 配置证书路径 这里我选择了“证书路径中所有证书,包括根证书”就是默认的
        下一步 描述:输入安装证书时提示的文字,随便输入,这里我输入“公文编辑器” WEB位置是点了你输入的东西的链接,我这里输入http://www.cn2cn.com —> 下一步 时间 没做改动 
        下一步 完成4、恭喜你,证书制作完毕,马上配置你的CAB或DLL等试试看,第一次运行会出现安装你的证书,以后再运行就不需要了,也不会出现“不安全的ACTIVEX,不让安装”等提示了5、调试及运行环境
       windows 2000 P
       IIS 5
      

  19.   

    MSDN中搜索Q197988
    HOWTO: Deploy an ActiveX Control Written in Visual Basic另MSDN(英文July 2000)中 URL.
    mk:@MSITStore:E:\Program%20Files\Microsoft%20Visual%20Studio\MSDN\2000JUL\1033\vbcon98.chm::/Html/vbcondownloadingactivexcomponents.htm到这个连接, 看完五篇文章,所有有关ActiveX部署,签名,安全的问题统统解决。不懂再问
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon98/html/vbconDownloadingActiveXComponents.aspDownloading ActiveX Components
    ---Steps to Prepare Your Component for Download
    ---Internet Component Download 
    ---Testing your Internet Component Download 
    ---Advanced Customization for Internet Component Download 
    ---Manually Deploying ActiveX Components