Microsoft Interop Excel SaveCopyAs与xlsx版本

时间:2016-04-11 14:30:46

标签: c# excel office-interop

我们正在尝试在Windows Server上使用MS Interop Excel并通过WCF使用它(我无法以更详细的方式解释它,因为我完全不了解它,抱歉。)。

我们使用方法SaveCopyAs将生成的excel文件保存在临时目录中,然后将其读取到字节数组并将其作为回复发送。

但是,在客户端应用程序中我们将其保存到xlsx扩展名的文件并尝试打开它后,Excel会向我们发出文件已损坏的警告,但在我们手动将文件名更改为xls之后工作得很好。

经过简短的研究,似乎办公室只是将它保存为某种旧文件版本(?)。因此,一种解决方案是使用SaveAs方法和有效参数,但它会给我们带来很多麻烦,所以我们宁愿坚持SaveCopyAs

是否有其他解决方案可以在没有SaveAs方法的情况下以较新的文件格式保存此类文件?

(你现在可能已经弄明白了,它是System.Runtime.InteropServices.COMException (0x800A03EC): Exception from HRESULT: 0x800A03EC例外。)

1 个答案:

答案 0 :(得分:0)

我们所遇到的所有麻烦的根源是我们的员工负责服务器维护,他们没有检查说已经安装了2013年的办公室,但实际上是2003年。