asp 网址迁移对 excel 组件的调用

关于VBscript 对 excel组件的调用

  • 由于公司的服务器前段时间又迁移操作,将原用服务器(windows server 2003+iis6) 上的网站全部迁移到新的服务器上(windows server +iis7) 由于服务器的环境的等改,网站上有的功能便不能使用了。

  • PS: VBscript 调用excel 组件 出现了问题,导致excel不能创建生成。但由于导出excel功能经常要使用,所以我只能凭借有限的力量去修复它了

    1. 因为是要通过excel来创建excel 对象,所以第一步安装 excel,于是我给服务器安装了 office 2010 (装玩excel 继续运行 出现权限不足 Microsoft VBScript 运行时错误 错误 ‘800a0046’ 没有权限!。)
      • 运行> dcomcnfg >组件服务>计算机>我的电脑>dcom 配置
      • 找到Excel.Application 赋予 everyone 调用权限 ( 但是我的docm 配置里面找不到Excel.Application 配置,只能找到 world配置 起初我以为是office 没装成功,又重新装了一遍,发现还是没有Excel.Application 配置。 这个只能在 注册表 HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel 赋予 excel Iuse 用户权限)
          Set ExcelApp =CreateObject("Excel.Application")
          ExcelApp.Visible = True   > 2.配置好权限之后接着运行 出现<span style="color:red">System.Runtime.InteropServices.COMException:   内存或磁盘空间不足,Microsoft   Office   Excel   无法再次打开或保存任何文档。 </span>
    
    • 一开始我觉的这个是excel 没有装好,但是可以创建excel 对象了(所以不是excel的问题) 但最后在网上 找到一个方法可以解决这个问题() 在出错代码前面加 ExcelApp.DefaultSaveFormat = 56

         ExcelApp.DefaultSaveFormat = 56  '解决内存磁盘不足代码'
        	     Set ExcelBook = ExcelApp.Workbooks.Add  '添加工作簿'
         //内存不足出错代码
         Set WorkSheet1 = ExcelBook.WorkSheets(1)   <p style="color:red"><a href="http://www.cnblogs.com/Athrun/archive/2011/04/19/2021307.html">这里要非常感谢这位哥们</a></p>
      
    • 解决玩内存不足的问题。接着运行出现还有问题(Microsoft Excel 错误 ‘800a03ec’ 类 Workbook 的 SaveAs 方法无效)

         if fs.FileExists(filename) then
         fs.DeleteFile(filename)
         end if
         Set fs = Nothing
        	    xcelbook.SaveAs filename   '错误语句'
         xcelbook.SaveCopyAs filename
         //将错误语句改为 SavaAs 改为 SavaCopyAs 问题解决
         Set ExcelBook = Nothing
         ExcelApp.Application.Quit '要加这一句,否则每运行一次你的里
         增加一个Excel进程,而且无法释放;
         Set ExcelApp = Nothing  <p style="color:red"><a href="http://s.yanghao.org/program/viewdetail.php?i=46682">这里要非常感谢写这篇文字的哥们</a></p>   <p style="color:red">因为之前的服务器环境为 windows server 2003 office 为2003 现在的office 版本为office 2007
      

</p>
<p>SaveCopyAs 保存的为office 2007 版本的excel</p>
<p>SavaAs 保存的为office 2003 版本的excel</p>
<p>所以在新的服务器上office的更改VBscript 对应的语句也要更改</p>ß