<script type="text/javascript">
      onDownReport=function(){
        var dialog = new ActiveXObject("MSComDlg.CommonDialog");
        dialog.Filter = "HTML 网页报告(*.htm)|*.htm|Adobe PDF 报告文件(*.pdf)|*.pdf
                   |Microsoft Office Excel 报告文件(*.xls)|*.xls|Microsoft Office Word 报告文件(*.doc)|*.doc";
        dialog.FilterIndex = 4;
        dialog.MaxFileSize = 128;
        dialog.DialogTitle = "下载保存";
        dialog.ShowSave() // 显示对话框
           }
</script>  以上代码是为了在生成报表时判断客户要生成什么格式的报表, 可是在 
                  var dialog = new ActiveXObject("MSComDlg.CommonDialog");           就报: Automation 服务器不能创建对象 这段代码在别的电脑上能行,在我的电脑上就不行,这个应该怎么解决????
         就网上所说的 
               在“运行”中执行regsvr32 scrrun.dll  文件 还是报错。
               IE的安全设置也相应的设置了 也不行
               echo 修复 也没用。
         请大家帮我看看应该怎么解决这个问题!!!!!
                

解决方案 »

  1.   

    应该是客户端机子上少了什么组件,所以js不能创建对象.
    你试试注册这个组件:ComDlg32.ocx,如果没有从其它机子上copy
      

  2.   

        我的电脑里有ComDlg32.ocx这个文件  应该不是这个的原因吧!
      

  3.   

    注册成功了!  
       但是还是 Automation 服务器不能创建对象
      

  4.   

    安全设置问题,未标记为安全的ActiveX的初始化和执行  改成有效
      

  5.   

    ^^^^要使用EXCEL对象,您必须安装Excel电子表格软件,同时浏览器须使用“ActiveX 控件”,您的浏览器须允许执行控件(未标记为安全的ActiveX的初始化和执行  改成有效)。
      

  6.   

    权限的问题。
    在XP可以正确地创建,而在win7中就不行。
    上回建议别人用的input type="File".
      

  7.   


     找不到电脑里少了上面组件
       就做了一个判断 如果Automation 服务器能创建对象 就以这种方法做下去
       如果不能的话 只能用其他的方法了