【发布时间】:2016-12-14 06:18:42
【问题描述】:
这是关于我们在生产中面临的 Excel 问题。我们有一个 asp.net 应用程序,它正在从共享驱动器中读取 Excel。我们的服务器上的 Dcom 配置和安全设置存在问题,导致该过程无法完成。
我们目前从 Dcom Identity 选项卡中定义的服务帐户运行该进程。
我们对应用程序从中读取文件的服务帐户的共享驱动器拥有完全权限。但我们仍然收到如下错误。 (错误消息:Microsoft 无法访问该文件:有几个可能的原因:文件名或路径不存在,该文件正在被另一个程序使用,您尝试保存的工作簿与当前打开的工作簿同名)
我们还拥有 excel 位置上服务帐户的完全权限。由于应用程序将由不同的用户运行,我们无法将 DCom 设置更改为“交互式用户”。企业希望应用程序在服务帐户上运行。 如果我们将其更改为“交互式用户”,它会按预期工作,并且 Excel 可以毫无问题地打开。
服务帐户也被添加到 COM 属性设置中。
我在 Windows\System32\Config\systemprofile\desktop 和 Windows\SysWow64\Config\systemprofile\desktop 下创建了 Desktop 文件夹,并授予了服务帐户的完全权限,但问题并未解决问题。
你能帮助我们吗?
【问题讨论】:
-
Excel + COM 自动化 + ASP.Net 强烈建议不要使用,它根本不适合在那种环境中工作。如果您只需要阅读文件,还有其他库/odbc 方法。
-
在这个问题上寻求帮助?感谢您的建议
-
使用开放的 XML SDK。 forums.asp.net/t/…