2

我正在尝试从 Sharepoint 文档库中打开一个 excel 文件。我的应用程序搜索特定文件,获取其链接并使用它来下载和进一步打开。

我的应用程序可以在我的机器和测试服务器上运行,但是当我将它发送到质量保证服务器时,问题就开始了。

我无权访问,也不会授予 QA 机器。我只有一堆 Console.writes 来看看会发生什么。

据我所知,一切正常,直到它尝试打开 excel 并给出以下错误:

Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))

根据我的搜索,这是与操作系统语言相关的一些错误,或者具有此解决方法的两种操作系统语言之间的差异http://support.microsoft.com/kb/320369

问题是,所有机器上的所有操作系统语言属性都是相同的,如果这是问题所在,我将无法在我的机器或测试服务器中打开 excel。此外,在解决方法中,他们使用 InvokeMember?真的不明白为什么我会做这样的事情。

代码:(我使用的是 Microsoft.Office.Interop.Excel;)

MSExcel.Application MyExcel = new MSExcel.ApplicationClass();
MSExcel.Workbook wb = MyExcel.Workbooks.Open(link, 0, true, 5, "", "", false, XlPlatform.xlWindows, "", true, false, 0, true, true, false);//Add(pathExcel);
MSExcel.Worksheet MyWS = (MSExcel.Worksheet)wb.Worksheets.get_Item(1);

其中链接是文件的完整 url。

我将不胜感激。如果有人有另一种方法来做同样的事情,我也将不胜感激。

提前致谢。

4

1 回答 1

0

看看这个链接

BUG:自动化 Excel 时出现“旧格式或无效类型库”错误

或 堆栈溢出中的相同也可在此处使用

旧格式或无效类型库。(来自 HRESULT 的异常:0x80028018 (TYPE_E_INVDATAREAD))

于 2012-12-19T12:57:08.357 回答