【发布时间】:2021-01-29 22:05:40
【问题描述】:
我正在尝试使用 Microsoft.Office.Interop.Excel 打开一个 excel 文件,但出现此错误:
System.Runtime.InteropServices.COMException:'抱歉,我们找不到 C:\Users\user\test.xlsx。是否有可能被移动、重命名或删除?'
这是我的 C# 代码:
Workbooks xlWorkBooks = null;
Workbook xlWorkBook = null;
Application xlApp = new Application();
xlWorkBooks = xlApp.Workbooks;
xlWorkBook = xlWorkBooks.Open(@"C:\Users\user\test.xlsx");
excel 文件存在且名称正确。 我正在使用 Windows 10 / microsoft office 2013
【问题讨论】:
-
您在该服务器上安装了 Excel 吗?此外,由于大多数 Web 服务器以 x64 位运行,因此必须假设您在此处安装了 x64 位 office/Excel。无论哪种方式,您都必须在服务器上安装 Excel。公平地说,不建议您以这种方式 COM 自动化办公程序 - 它们往往不是非常线程安全的。但是,office 安装的位大小必须与您的代码运行方式相匹配。如果您打算这样做,请不要使用任何 CPU - 强制项目为 x64 或至少与最终 Web 服务器将运行的位大小相同。
标签: c# asp.net excel office-interop excel-interop