<OBJECT id='PivotTable' classid='clsid:0002E552-0000-0000-C000-000000000046' VIEWASTEXT>
 <param name='XMLData' value="">
 <div align=left style='margin-top:20;'>要交互式地使用此 Web 页,您必须有 Microsoft(R) Internet Explorer 4.01 Service Pack 1 (SP1) 或更新版本,以及 Microsoft Office XP Web Components。</div>
 <div align=left><a href='../../pic/owc10.exe'>请单击此处以安装 Office XP Web Components。</a></div>
 <div align=left style='margin-top:50;'>请访问 <a href='http://office.microsoft.com/office/redirect/10/MSOWCPub.asp?HelpLCID=2052'>Microsoft Office Web 站点</a> 以获取更多信息。</div>
</OBJECT>

解决方案 »

  1.   

    只需指明“OBJECT”标签的“CODEBASE”属性,如:
    <object id=obj1 classid="......" codebase="控件名.ocx">
    此处假设控件文件与此文件在同一目录下,如在其它位置请明即可
      

  2.   

    是不是能用TRY CATCH语句来捕捉?
      

  3.   

    to DuJianDong(翼):
    你说的方法只能在本地调用ocx控件,如果ocx控件和网页都放在Web站点上,IE会提示不安全而不能调用(或安装)ocx控件怎么办?怎么让IE安装ocx控件?要用数字签名吗?
    真的很急!!
      

  4.   

    向秋水大哥学来的.<object classid=clsid:111111-111111 onerror='alert("err: maybe doesnot install this obj...")'></object> 
      

  5.   

    用 try .catch .try{ 
      var obj = new ActiveXObject("yourActiveXObj") 

    catch(e){ 
      alert("err: maybe doesnot install this obj...") 

      

  6.   

    我试过的,应该能行,假设下载的Web站点名叫"http://www.download.com",
    有个名叫“SelectFile.ocx"的控件:
    <OBJECT id=sf1  codebase="http://www.download.com/SelectFile.ocx"
    classid=CLSID:......>
    </OBJECT>
    classid可以是任意的,因为这个值取自服务器,但必须注意要降低你本机的安全设置,或将你的Web站点设为安全站点,注意是你的Web站点,而不是http://www.download.com
      

  7.   

    我试的结果是要把IE的安全级别设置到最低,这不好
    将Web站点设为安全站点,对用户来说也太麻烦了像flash插件和3721的那种通过网页自动安装的程序是怎么做的有人知道吗?
      

  8.   

    在服务器端,将ocx文件打成一个自解压的压缩包,
    在客户端,IE--internet选项--安全--自定义级别--Activex下的选项都启用,再试试。
      

  9.   


    问:
        请问,如何使ActiveX文档和ActiveX控件正确放置于网页上使用户能够正确下载,并注册?如何向WEB站点上载并向用户分发ActiveX文档? 我在本地试行ActiveX控件时,由于本地已有注册,故直接在浏览器上执行,在其它客户端上试行,不能执行。我在HTM文件中只使用的OBJECT做标记。 回答: 
        先使用VB 6.0的“Package & Deployment向导”,在选择安装类型时选择“Internet下载类型”。这样向导会生成.cab文件和.htm文件。在.htm文件中包括类似下面的代码: 
        <OBJECT ID="DualList" 
        CLASSID="CLSID:B5461185-5F1B-11D3-AFB6-D88009C10000" 
        CODEBASE="Dual.CAB#version=1,0,0,0"> 
        这里重要的是CODEBASE,修改它为.cab文件在服务器上的路径,如http://www.abc.com/pub/dual.cab#version=1,0,0,0。如果用户的机器上没有该控件,则IE会自动下载该控件到Temporary Internet Files目录中并进行注册,这样就可以使用网页了。你可以根据向导生成的.htm文件修改你的.htm文件并上传.cab文件。ActiveX文档与此类似。 
         
    问: 要是用的是.ocx文件呢?怎么设置? 
        答:可以直接将CODEBASE指向.ocx文件,如:CODEBASE="http://example.microsoft.com/somecontrol.ocx#version=4,70,0,1086" 
         
    问: CLASSID="CLSID:B5461185-5F1B-11D3-AFB6-D88009C10000" 
        这个值是怎么样才能得到?是服务器端必须注册好的吗?可不可以不要? 
        简单地说,当客户端浏览网页时,首先下载一个我自己做的控件并注册到客户端,然后才能运行该控件。可是客户端并不知道这个CLSID,这只是服务器端的地址。如果服务器不是WINDOWS系统,而是自己写的一个嵌入式的操作系统,又该怎么办呢? 
        答:CLSID的值是VB自动生成的。你只要向上面说的运行“Package & Deployment向导”就可以得到这个值。ActiveX控件是运行在客户端的,在服务器端是不需要注册的,和服务器所使用的操作系统也无关。只要在HTML文件中正确地加入上面提到的标记,客户端在下载HTML后自然就知道这个CLSID了。