在Excel.Interop和C中调用Workbook.SaveAs()时抛出异常#

问题描述:

我们遇到了一个生产问题,我们称其为Excel工作簿的SaveAs方法和密码。抛出的异常是:在Excel.Interop和C中调用Workbook.SaveAs()时抛出异常#

The remote procedure call failed. (Exception from HRESULT: 0x800706BE) 

呼叫完成如下,其中_ExcelPassword是工作簿的生成的密码和ExcelOutputPath是在磁盘上的位置的文件应被写入:

workbook.SaveAs(ExcelOutputPath, XlFileFormat.xlOpenXMLWorkbook, _ExcelPassword, _ExcelPassword, false, false); 

没有问题如果该文件没有密码保存。

我错过了什么?

+0

我很久以前切换到这个免费的图书馆,从来没有回头看......这很棒http://epplus.codeplex.com/ – Vland

因此,我最终的解决方案是保存没有密码的工作簿,重新打开它,在工作簿对象上设置密码,然后再次保存。单调乏味,我知道,但是,这完全解决了remote procedure call failed问题我得到