zoukankan      html  css  js  c++  java
  • NTKO OFFICE文档控件为何不能自动装载?

    1、问题表现:


      当访问引用控件的网页时,NTKO OFFICE文档控件窗口不会出现,导致相关的引用控件的Javacript语句无法运行。网页上出现类似“无法加载控件,请检查浏览器安全设定”的错误提示,并且可能有JavaScript无法找到对象的错误提示。


    2、此问题和控件本身无关。为了解决NTKO OFFICE文档控件不能自动装载的问题,首先来看看浏览器装载对象涉及到的步骤。(暂时不考虑如防病毒软件或者其他过滤工具的影响)


      对于HTML代码中引用控件的如下代码:
      <object id="TANGER_OCX" classid="clsid:C9BC4DFF-4248-4a3c-8A49-63A7D317F404" codebase="/path/to/OfficeControl.cab#version=4,0,0,5" width="100%" height="100%">
      其中:
      1) id="TANGER_OCX"标识控件的JavaScript编程标识,通过document.all("TANGER_OCX")即可得到对控件对象的引用。
      2)clsid:C9BC4DFF-4248-4a3c-8A49-63A7D317F404标识NTKO OFFICE文档控件的唯一标识。浏览器通过这个clsid来判断访问网页的客户机是否已经安装控件。
      3)在codebase="/path/to/OfficeControl.cab#version=4,0,0,5" 中,前面的/path/to/OfficeControl.cab部分,标识控件自动安装文件在服务器上相对当前网页的URL位置,而#version=4,0,0,5部分标识该网页需要的控件版本号。
      浏览器装载控件的流程大致如下:


    3、根据以上流程,当出现以下几种情况,NTKO OFFICE文档控件将不能自动装载:


      1)本地Internet选项中的安全设定,在当前区域禁止下载已签名的ActiveX控件;

      2)引用控件的网页中,<object 标记中的codebase属性指定不正确,导致浏览器无法下载OfficeControl.cab文件;

      3)服务器上的OfficeControl.cab被破坏,失去正确的签名,或者使用了不正确的版本;

      4)虽然服务器上的OfficeControl.cab正确,但是浏览器下载的有问题。这个可能会因为某些WEB服务器的mime的错误配置引起,导致服务器将OfficeControl.cab不以二进制文件的形式发送给浏览器;

      5)本地Internet选项中的安全设定,在当前区域不允许运行ActiveX控件和插件;

      6)还有可能是由于微软的补丁引起,或者其他防病毒软件或者过滤软件阻止了控件安装;


    4、您可以按照如下次序检查并排除问题:


      1) 确认本地Internet选项中的安全设定中,允许下载已签名的ActiveX控件,并允许运行ActiveX控件和插件

      2)确认引用控件的网页中,<object 标记中的codebase=部分,正确指向了服务器上的OfficeControl.cab文件的URL[相对当前网页或者相对服务器根]。

      3)从浏览器地址栏直接输入服务器上的OfficeControl.cab文件的URL,包含主机名,确认浏览器出现下载提示并且在下载保存后的OfficeControl.cab文件上,点击右键看属性,在出现的对话框中具有“数字签名”,且签名正确。

      4)如果以上方法还不能解决问题,并且您的系统安装了“微软累积安全更新 MS05-052补丁”,请尝试如下步骤:

        警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。

        1、单击“开始”,单击“运行”,键入 Regedit.exe,然后单击“确定”。
        2、找到以下注册表子项:
        HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility
        3、右键单击“ActiveX Compatibility”,查找NTKO OFFICE文档控件的CLSID:{C9BC4DFF-4248-4a3c-8A49-63A7D317F404},如果该项目存在,右键单击右边的“Compatibility Flags”项目,然后单击“修改”。在“数值数据”框中,选择16进制,输入00800000,然后单击“确定”。
        4、如果该NTKO OFFICE文档控件的CLSID不存在,则右键单击“ActiveX Compatibility”,指向“新建”,单击“项”,键入NTKO OFFICE文档控件的CLSID:{C9BC4DFF-4248-4a3c-8A49-63A7D317F404},然后按 Enter。
        5、右键单击您在步骤 4 中创建的项,指向“新建”,然后单击“DWORD 值”。
        6、键入 Compatibility Flags,然后按 Enter。
        7、右键单击“Compatibility Flags”,然后单击“修改”。
        8、在“数值数据”框中,选择16进制,输入00800000,然后单击“确定”。
        9、退出注册表编辑器。

      5)如果以上方法还不能解决问题,尝试暂时关闭防病毒软件或者其他过滤软件再进行安装。

      6)如果还是不能解决问题,可能是机器配置被破坏,可以尝试进行手工安装。具体请参考相关文档。

  • 相关阅读:
    FCKEditor装入模板方法
    医道再解开阖枢
    测试一下 Last
    [技术架构] 大型互联网站解决高并发的常见策略
    swfupload实现图片及缩略图上传
    解决“在证书存储区中找不到清单签名证书”
    asp.net EnableViewState禁用与注意事项
    jQuery创建水平和垂直居中的div窗口
    甩掉ashx/asmx,使用jQuery.ajaxWebService请求WebMethod,Ajax处理更加简练
    type="button" ,"submit" 的区别(转)
  • 原文地址:https://www.cnblogs.com/xyang0917/p/4172539.html
Copyright © 2011-2022 走看看