MS office Word 2016 从 2010 升级导致错误“错误:80080005 服务器执行失败”(CO_E_SERVER_EXEC_FAILURE).Net Web 应用程序
Posted
技术标签:
【中文标题】MS office Word 2016 从 2010 升级导致错误“错误:80080005 服务器执行失败”(CO_E_SERVER_EXEC_FAILURE).Net Web 应用程序【英文标题】:MS office Word 2016 upgrade from 2010 resulted in error “error: 80080005 Server execution failed” (CO_E_SERVER_EXEC_FAILURE) .Net web application 【发布时间】:2021-06-10 10:13:03 【问题描述】:.Net C# Web 应用程序,可从其网页之一生成 Word 文档。
在开发服务器中,我们最近将 microsoft office 版本从 2010 升级到 2016。在初始化 word dll 时遇到问题(在另一个环境中,我们仍然安装了 office 2010,我们没有看到这个问题,但是 microsoft office从 2010 年升级到 2016 年是强制性的)。所以我需要帮助来解决这个问题。
using Word = Microsoft.Office.Interop.Word;
.....
App wrodApp = new Word.Application();
--> 这行导致下面的错误
错误:检索具有 CLSID 000209FF-0000-0000-C000-000000000046 的组件的 COM 类工厂失败,原因是以下错误:80080005 服务器执行失败(HRESULT 异常:0x80080005 (CO_E_SERVER_EXEC_FAILURE))。
请告诉我如何解决这个问题?
【问题讨论】:
【参考方案1】:这是 MS 所说的:
Microsoft 目前不推荐也不支持任何无人值守、非交互式客户端应用程序或组件(包括 ASP、ASP.NET、DCOM 和 NT 服务)的 Microsoft Office 应用程序自动化,因为 Office 可能表现出不稳定Office 在此环境中运行时出现的行为和/或死锁。
如果您要构建在服务器端上下文中运行的解决方案,您应该尝试使用已确保无人值守执行安全的组件。或者,您应该尝试找到允许至少部分代码在客户端运行的替代方案。如果您使用服务器端解决方案中的 Office 应用程序,该应用程序将缺少许多成功运行所需的功能。此外,您将在整体解决方案的稳定性方面承担风险。
在Considerations for server-side Automation of Office 文章中了解更多信息。
您可以考虑使用为服务器端执行而设计的第三方组件。或者,如果您只处理 Open XML 文档,您可以考虑使用Open XML SDK 2.5 for Office。
【讨论】:
以上是关于MS office Word 2016 从 2010 升级导致错误“错误:80080005 服务器执行失败”(CO_E_SERVER_EXEC_FAILURE).Net Web 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
任何第三方提供渲染MS-office(word,ppt,excel)的android库
office word2016之:从指定页插入页码,并将该页作为起始页