未处理的exception:System.Runtime.InteropServices.COMException(0x800A03EC)

我有一个C#应用程序,导出一个Excel文件。 当我从Visual Studio运行它时,它工作正常。 但是,当我安排它从SQL Server代理运行时,失败,出现以下错误:

未处理的exception:System.Runtime.InteropServices.COMException(0x800A03EC):由于没有足够的可用内存或磁盘空间,Microsoft Office Excel无法打开或保存更多文档。 要提供更多内存,请closures不再需要的工作簿或程序。 要释放磁盘空间,请从保存的磁盘中删除不再需要的文件。

我搜查了很多链接,他们说这可能是一个许可问题。 所以我按照Stack Overflow提供的解决scheme应用了下面的东西,但没有运气。

  1. 创build目录“C:\ Windows \ SysWOW64 \ config \ systemprofile \ Desktop”(对于64位Windows)

  2. 应用对我的域用户SQLServiceAgent的目录Desktop完全控制权限

我在MS Excel 2007中使用SQL Server 2014和Win 2012 Edition。

谁能帮忙?

我试过这个,它的工作。 我发现DCOMconfiguration中缺less“Microsoft Excel Application”。 所以,我做了以下步骤:

  1. 开始
  2. mmc -32
  3. 文件
  4. 添加删除pipe理单元
  5. 组件服务
  6. 控制台根
  7. 组件服务
  8. 电脑
  9. 我的电脑
  10. DCOMconfiguration
  11. Microsoft Excel应用程序 – >右键单击 – >属性
  12. 在“安全性”选项卡上,对以下位置的域用户和NT SERVICE \ SQLSERVERAGENT授予完全权限:a。 启动和活动权限b。 访问权限c。 configuration权限
  13. 在标识选项卡上 – >切换到交互式用户

而已。 我运行了SQL作业,它成功了。